Обратный прокси-сервер Nginx Apache перенаправляет в неправильный каталог
Я следовал этому руководству, чтобы настроить Nginx с обратным прокси для Apache. У меня проблемы с получением моего доменного имени для перенаправления на правильную страницу. У меня также есть несколько поддоменов, и некоторые из них перенаправляют правильно, а другие нет. У меня есть следующая структура файлов, где я размещаю файлы моего сайта:
/var/www/ html index.php mysite.com public_html index.php sub1 public_html index.php sub2 public_html index.html
ПРИМЕЧАНИЕ. У меня более двух поддоменов, но для простоты я перечислил только два. Вы можете предположить, что остальные подчиняются той же базовой структуре, что и один или другой из поддоменов, перечисленных здесь. В каждом каталоге больше файлов, чем просто index.php / index.html.
Мне кажется, что серверные блоки, которые работают, имеют index.html, а те, которые не работают, имеют index.php.
Когда я говорю, что они «не работают», я имею в виду, что он перенаправляет /var/www/html/index.php
вместо правильного файла index.php в соответствующий каталог сервера.
Например, если я захожу на mysite.com, вместо того, чтобы отвезти меня туда /var/www/mysite.com/public_html/index.php
, он меня и заберет var/www/html/index.php
.
Точно так же, когда я посещаю sub1.mysite.com, меня посещают var/www/html/index.php
.
Когда я посещаю sub2.mysite.com, я попадаю на var/www/sub2/public_html/index.html
.
Я думаю, что это как-то связано с конфигурацией на шаге 11, где файлы PHP перенаправляются в Apache, но я не могу понять, как перенаправить их в правильный каталог.
Вот мои конфигурационные файлы (с субтитрами PII):
/ И т.д. / Nginx / сайты Недоступные / апач
server { listen 80; server_name mysite.com www.mysite.com; root /var/www/mysite.com/public_html; index index.php index.htm index.html; location / { try_files $uri $uri/ /index.php; } location ~ \.php$ { proxy_pass http://<server-ip>:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } location ~ /\.ht { deny all; } } server { listen 80; server_name sub1.mysite.com www.sub1.mysite.com; root /var/www/sub1/public_html; index index.php index.htm index.html; location / { try_files $uri $uri/ /index.php; } location ~ \.php$ { proxy_pass http://<server-ip>:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } location ~ /\.ht { deny all; } } server { listen 80; server_name sub2.mysite.com www.sub2.mysite.com; root /var/www/sub2/public_html; index index.php index.htm index.html; location / { try_files $uri $uri/ /index.php; } location ~ \.php$ { proxy_pass http://<server-ip>:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } location ~ /\.ht { deny all; } }
/etc/apache2/sites-available/mysite.com.conf
<VirtualHost *:8080> ServerName mysite.com ServerAlias www.mysite.com DocumentRoot /var/www/mysite.com/public_html <Directory /var/www/mysite.com/public_html> AllowOverride All </Directory> </VirtualHost>
/etc/apache2/sites-available/sub1.conf
<VirtualHost *:8080> ServerName sub1.mysite.com ServerAlias www.sub1.mysite.com DocumentRoot /var/www/sub1/public_html <Directory /var/www/sub1/public_html> AllowOverride All </Directory> </VirtualHost>
/etc/apache2/sites-available/sub2.conf
<VirtualHost *:8080> ServerName sub2.mysite.com ServerAlias www.sub2.mysite.com DocumentRoot /var/www/sub2/public_html <Directory /var/www/sub2/public_html> AllowOverride All </Directory> </VirtualHost>
Я создал символическую ссылку между /etc/apache2/sites-available/
и /etc/apache2/sites-enabled/
так же как между /etc/nginx/sites-available/
и /etc/nginx/sites-enabled/
как описано в руководстве.
0 ответов на вопрос
Похожие вопросы
-
4
Требуется хороший бесплатный образ Ubuntu Server VMWare
-
8
Ожидание ноутбука в Linux / Ubuntu
-
1
Как я могу получить доступ к принтеру Windows Vista из Ubuntu по сети?
-
-
3
Могу ли я запустить Microsoft Office 2007 под Ubuntu?
-
6
Virtualbox, VMware, KVM или другое для виртуализации Ubuntu?
-
4
Функция Windows 7 «Aero Snap» в Ubuntu GNOME
-
5
ПО для управления iPod для Linux
-
1
Возвращаясь из Dual-boot к просто Windows
-
2
Firefox печать в PDF-файл
-
5
Как получить максимальное разрешение на Ubuntu в Microsoft Virtual PC?