Problèmes du nom de server NGINX
J'ai le bloc de server simple suivant sur NGINX:
server { listn 80; listn 8090; server_name domain.com; autoindex on; root /home/docroot; location ~ \.php$ { include /usr/local/nginx/conf/fastcgi_params; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /home/docroot$fastcgi_script_name; fastcgi_pass 127.0.0.1:9000; } }
Après avoir inclus les parameters pertinents sur le file de mes hôtes, j'ai le comportement suivant (inattendu)
- nginx, authentification HTTP apache
- L'équilibrage de charge Nginx redirige vers le "nom" en amont
- Nginx try_files au lieu des IF pour accomplir une logique conditionnelle
- Installation de certs SSL avec nginx sur Amazon EC2
- Comparer le paramètre net.ipv4.ip_local_port_range du kernel au paramètre de port d'un server Web
- http: //domain.com/ et http: //domain.com:8090/ fonctionne bien;
- http: //domain.com:8090/future-cell-phone-technology-01-150×150.jpg fonctionne;
- http: //domain.com/future-cell-phone-technology-01-150×150.jpg -> ERREUR! "La connection a été réinitialisée"
(note.- ajouté un espace après http: pour éviter la protection des liens, mais cela ne favorise vraiment rien)
J'ai été dépannage (3) pendant quelques heures et je ne peux pas identifier le coupable. J'utilise NGINX 1.0.10 (dernier niveau stable) sur Debian 6.0.2 32 bits.
Cette instance NGINX exploite encore 40 ou 50 sites sans problème.
- Nginx, redirige tous les résultats au file index.php unique dans le sous-dossier
- nginx auth_basic pour l'adresse avec un port spécifique
- Nginx: bind () à 0.0.0.0:80 échoué sur Windows
- Nginx en tant que proxy smtp [fermé]
- incapable de gérer les sessions de connection user avec cache nginx
- Installation de drupal 6 à partir de zéro dans nginx
- Redirection de toutes les URL qui contiennent 1 mot en particulier, mais qui ne contiennent pas d'autres mots
- Application de nouveaux parameters de configuration à Nginx sans time d'arrêt?
One Solution collect form web for “Problèmes du nom de server NGINX”
Peut-être que vous devez utiliser la directive try_files, car il semble que vous rencontrez un problème pour les files statiques (.jpg et éventuellement d'autres charts, css, etc.) mais pas les files php.
Un exemple de configuration pour drupal à partir du wiki NGginx:
# for Drupal 6 or 7: try_files $uri $uri/ /index.php?q=$uri&$args; # a better version for Drupal 7 since it doesn't need q=$uri: try_files $uri $uri/ /index.php?$args; location ~ \.php$ { fastcgi_pass 127.0.0.1:8888; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # if not already defined in the fastcgi_params file # any other specific fastcgi_params }
Pour plus de détails, voir: http://wiki.nginx.org/HttpCoreModule#try_files
Donc, étant donné votre configuration, peut-être simplement append la directive try_files fonctionnerait-elle comme ceci (pas testé)?
server { listn 80; listn 8090; server_name domain.com; autoindex on; root /home/docroot; try_files $uri $uri/ /index.php?$args; location ~ \.php$ { include /usr/local/nginx/conf/fastcgi_params; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /home/docroot$fastcgi_script_name; fastcgi_pass 127.0.0.1:9000; } }