Nginx / proxy_pass : impossible de faire fonctionner un sous domaine - Logiciels - Linux et OS Alternatifs
Marsh Posté le 24-08-2014 à 11:04:11
en fait tout ton domaine au niveau 2 est redirigé vers la conf apache.
Tu devrais simplifier ta conf nginx :
server {
listen 80;
server_name .toto.org;
access_log /var/log/nginx/toto.org_access.log;
error_log /var/log/nginx/toto.org_error.log;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_pass http://localhost:8080/;
}
}
et tes sous domaines via la conf apache :
<VirtualHost *:8080>
ServerAdmin webmaster@localhost
ServerName toto.org
ServerAlias www.toto.org
DocumentRoot /var/www/toto.org/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/toto.org/www>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/www.toto.org.error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/www.toto.org.access.log combined
</VirtualHost>
<VirtualHost *:8080>
ServerAdmin webmaster@localhost
ServerName sub.toto.org
DocumentRoot /var/www/toto.org/sub
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/toto.org/sub>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/sub.toto.org.error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/sub.toto.org.access.log combined
</VirtualHost>
Marsh Posté le 20-08-2014 à 11:38:45
Hello tout le monde,
J'ai un nginx qui fonctionne en production pour faire cache et fonctionne très bien depuis longtemps.
Hier on m'a demandé de placer un sous domaine, et je me suis dit "oh bah ca va être simple cette histoire", mais wallou.
En gros
client -> server nginx port 80 -> apache 8080
Et lorsque j'ajoute un sous-domaine ni le domaine principal ne réponds, ni le sous-domaine.
Voici la conf :
server {
listen 80;
server_name www.toto.org;
access_log /var/log/nginx/xxx_www_access.log;
error_log /var/log/nginx/xxx_www_error.log;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_pass http://localhost:8080/;
}
}
server {
listen 80;
server_name sub.toto.org;
access_log /var/log/nginx/xxx_zzz_access.log;
error_log /var/log/nginx/xxx_zzz_error.log;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_pass http://localhost:8080/;
}
}
Lorsque je fais une requete directement sur l'apache avec le port 8080 les deux directory répondent très bien. Donc ca ne vient pas de l'apache, mais clairement de l'nginx.
Merci pour votre aide
edit : précision j'ai viré toute la partie cache de la conf pour faire au plus minimaliste afin de faire fonctionner et de comprendre le dysfonctionnement.
Message édité par pervmaster le 20-08-2014 à 11:40:12