Je ne suis pas sûr de ce qui s'est passé avec mon installation nginx
. Soudainement, toutes les demandes de page sont redirigées vers la page 403
.
Hier, j'ai essayé d'ajouter un agent utilisateur à bloquer, redémarré le service à partir de ce moment-là tout était envoyé vers le 403. J'ai annulé ce changement, redémarré nginx
et tout est toujours dirigé vers la page 403
. Même si je supprime les déclarations $http_user_agent
et $http_referer
, tout est encore envoyé vers 403.
J'ai même restauré tout le dossier nginx
à partir d'une sauvegarde et toutes mes demandes de page continuent d'être dirigées vers la page 403....
Je ne sais pas comment résoudre ce problème, les fichiers de configuration semblent propres. Y a-t-il une trace que je peux faire pour nginx
lorsque les demandes entrent?
[root@soupcan nginx]# nginx -t
nginx: le fichier de configuration /etc/nginx/nginx.conf est syntaxiquement correct
nginx: le test de fichier de configuration /etc/nginx/nginx.conf est un succès
Voici la configuration du site web:
server {
listen 80;
server_name localhost;
#charset koi8-r;
access_log /var/log/nginx/website1/access.log main;
error_log /var/log/nginx/website1/error.log;
root /srv/www/website1;
## Blocage de l'agent utilisateur http - scanner foutu de morpheus ##
if ($http_user_agent ~* "morpheus fucking scanner|ZmEu|Morfeus strikes again.|OpenWebSpider v0.1.4 (http://www.openwebspider.org/)") {
return 403;
}
if ($http_referer ~* (semalt.com|WeSEE)) {
return 403;
}
## Autoriser uniquement les méthodes de demande GET et HEAD. Par défaut, Nginx bloque
## toutes les demandes autres que GET et HEAD pour le contenu statique.
if ($request_method !~ ^(GET|HEAD)$ ) {
return 405;
}
location / {
index index.html index.htm index.php;
ssi on;
}
location ~ \.php {
try_files $uri =404;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
#fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /srv/www/website1/$fastcgi_script_name;
}
#error_page 404 /404.html;
# redirection des pages d'erreur du serveur vers la page statique /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
# Rediriger les pages d'erreur du serveur vers la page statique
error_page 403 404 /error403.html;
location = /error403.html {
root /usr/share/nginx/html;
}
}
nginx.conf
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
gzip on;
gzip_disable "msie6";
gzip_min_length 1100;
gzip_vary on;
gzip_proxied any;
gzip_buffers 16 8k;
gzip_types text/plain text/css application/json application/x-javascript
text/xml application/xml application/rss+xml text/javascript
image/svg+xml application/x-font-ttf font/opentype
application/vnd.ms-fontobject;
server_tokens off;
include /etc/nginx/conf.d/*.conf;
# Charger les fichiers de configuration du virtual host.
include /etc/nginx/sites-enabled/*;
# BLOQUER LES ADRESSES IP DES SPAMMERS
include /etc/nginx/conf.d/blockips.conf;
}
Autorisations pour le répertoire webroot:
[root@soupcan nginx]# namei -om /srv/www/website1/
f: /srv/www/website1/
dr-xr-xr-x root root /
drwxr-xr-x root root srv
drwxrwxr-x brian nobody www
drwxr-x--x brian nobody website1
EDIT
EDIT 2
Solution postée ci-dessous.