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)

  1. http: //domain.com/ et http: //domain.com:8090/ fonctionne bien;
  2. http: //domain.com:8090/future-cell-phone-technology-01-150×150.jpg fonctionne;
  3. 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.

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; } } 
  • Forcer SSL sur certains paths et forcer le non-SSL sur tous les autres paths avec NGINX
  • "ImportError: Aucun module nommé flask" - Problème avec nginx + uWSGI + Flask dans une configuration virtualenv
  • Nginx reverse proxy HTTPS vers HTTP IIS backend
  • Nginx localisation indésirable redirigé avec barre oblique
  • Expliquez l'équilibrage de charge avec Nginx comme si j'en ai cinq ans
  • configuration de ssl sur nginx - cette list de numbers est-elle à jour?
  • Demande d'logging / Taille de réponse dans access_log de Nginx
  • Prioriser TLSv1.2 dans nginx conf ssl_protocols
  • Compression Gzip avec nginx
  • Sur Ubuntu installé NginX et ne peut pas find où la nouvelle racine WWW est
  • Comment faire pour que nginx passe l'en-tête HTTP_AUTHORIZATION à Apache
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.