Дабы не оставлять тему "открытой".
Сегодня психанул и снёс нжинкс.
Стал перенастраивать все на апач и заметил, что и тот отказывается правильно раскидывать запросы по хостам.
Снова полез в конфиги (уже апача), заметил строчку вида
ServerName www.test.ru
Задумался... а зачем мне для
ServerName это самое
www?
Перезапуск апача, тест.
Все работает как нужно. Так может я где-то и в конфигах нжинкса напортачил с адресами?
Ставлю обратно нжинкс, срисовываю свои же конфиги с этой темы. Но в конфигах нжинкса вижу, что по структуре есть различия
server_name test.ru www.test.ru;
Ладно, проверим.
Копирую конфиг, настраиваю оставшиеся хосты, ребут апача (на всякий), ребут нжинкса, тест...
Магия... Все работает. Нжинкс отдает статику, если обращение идет к php - редиректит запрос на апач. Profit!
Если честно, не совсем понял, почему вчера в итоге не работало)))
На всякий случай, итоговые конфиги вхостов на апаче и нжинксе (еще требуют допиливания, но для первоначальной настройки все работает)
/etc/apache2/sites-available/test.ru.conf
Код: Выделить всё
<VirtualHost 127.0.0.1:8080>
ServerName test.ru
ServerAlias www.test.ru
DocumentRoot /web/test.ru/www
<Directory /web/test.ru/www>
# Option Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
LogLevel warn
ErrorLog /web/test.ru/log/error.log
CustomLog /web/test.ru/log/access.log combined
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>
/etc/nginx/sites-available/test.ru.conf
Код: Выделить всё
server {
listen 80;
root /web/test.ru/www;
index index.html index.php;
server_name test.ru www.test.ru;
# передача запроса апачу
location / {
proxy_pass http://127.0.0.1:8080/; # Порт на котором висит Apache
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-for $remote_addr;
proxy_set_header Host $host;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
proxy_redirect off;
proxy_set_header Connection close;
proxy_pass_header Content-Type;
proxy_pass_header Content-Disposition;
proxy_pass_header Content-Length;
}
location ~* ^(?!/phpmyadmin/).+\.(jpg|jpeg|gif|png|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|tar|wav|bmp|rtf|swf|ico|flv|txt|xml|docx|xlsx)$ {
access_log off;
expires 30d;
}
# запрет на доступ к .htaccess
location ~ /\.ht {
deny all;
}
}