Nginx Apache Reverse Proxy leitet auf das falsche Verzeichnis um

504
MattR

Ich folgte dieser Anleitung, um Nginx mit Reverse Proxy für Apache einzurichten. Ich habe Probleme, meinen Domainnamen auf die richtige Seite umzuleiten. Ich habe auch mehrere Subdomains, von denen einige korrekt umgeleitet werden und andere nicht. Ich habe die folgende Dateistruktur, in der ich meine Website-Dateien platziere:

/var/www/ html index.php mysite.com public_html index.php sub1 public_html index.php sub2 public_html index.html 

HINWEIS: Ich habe mehr als zwei Subdomains, ich habe hier der Einfachheit halber nur zwei aufgeführt. Sie können davon ausgehen, dass die anderen dieselbe Grundstruktur wie die eine oder andere der hier aufgeführten Subdomains haben. In jedem Verzeichnis gibt es mehr Dateien als nur index.php / index.html.

Ich glaube, dass die Serverblöcke, die funktionieren, die sind, die index.html haben, und die, die nicht funktionieren, die index.php haben.

Wenn ich sage, dass sie "nicht funktionieren", meine ich, dass sie zu /var/www/html/index.phpder richtigen index.php-Datei im entsprechenden Verzeichnis des Servers umgeleitet wird .

Wenn ich zum Beispiel auf mysite.com gehe, anstatt mich zu nehmen /var/www/mysite.com/public_html/index.php, bringt es mich dazu var/www/html/index.php.

Ebenso werde ich, wenn ich visit.mysite.com besuche, zu mir gebracht var/www/html/index.php.

Wenn ich auf,22mysite.com gehe, werde ich zu weitergeleitet var/www/sub2/public_html/index.html.

Ich denke, das hat etwas mit config in Schritt 11 zu tun, wo PHP-Dateien an Apache umgeleitet werden, aber ich kann nicht herausfinden, wie ich sie in das richtige Verzeichnis umleiten kann.

Hier sind meine Config-Dateien (mit PII ausgezogen):

/ etc / nginx / sites-available / apache

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> 

Ich habe den Symlink zwischen /etc/apache2/sites-available/und /etc/apache2/sites-enabled/sowie zwischen /etc/nginx/sites-available/und /etc/nginx/sites-enabled/wie im Leitfaden beschrieben erstellt.

0

0 Antworten auf die Frage