Fichier de configuration - configuration multisite nginx, inaccessible via le nom de domaine, l'utilisation de l'accès IP permettra d'accéder à l'un des sites
阿神
阿神 2017-05-16 17:09:33
0
3
818

J'ai configuré le multi-site Nginx sur un serveur, mais les noms de domaine utilisés pour accéder à ces sites ne sont pas accessibles. L'erreur est la suivante :

.

Vous serez redirigé vers l'un des sites via IP, notamment comme suit :

Lorsque toutes les configurations sont activées, tous les noms de domaine ne sont pas accessibles. L'accès IP affiche siteD
Après avoir supprimé le siteD, il passera au siteB, après avoir supprimé le siteB, il passera à 404, après avoir supprimé le siteB, il passera au siteB. vers le siteA, et après avoir supprimé le siteA, il passera au siteC

Après avoir vérifié pendant longtemps, je ne sais toujours pas quel est le problème. S'il vous plaît, aidez-moi à le résoudre/w

.

Voici les fichiers de configuration spécifiques :

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;

    server_tokens   off;
    underscores_in_headers off;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;
}

default.conf

server {
    listen       80;
    server_name  _;

    location / {
        return 404;
    }
}

siteA.conf

server {
    listen       80;
    server_name  siteA.domain.com;

    access_log  /var/log/nginx/siteA.access.log  main;

    location / {
        root   /usr/share/nginx/html/siteA;
        index  index.php index.html index.htm;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    location ~ \.php$ {
         #try_files $uri =404;
         #root /usr/share/nginx/html/siteA;
         fastcgi_split_path_info ^(.+.php)(/.+)$;
         fastcgi_pass unix:/dev/shm/php5.6-fpm.sock;
         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
         fastcgi_index index.php;
         include fastcgi_params;
    }
}

siteB.conf

server {
    listen       80;
    server_name  siteB.domain.com;

    access_log  /var/log/nginx/siteB.access.log  main;

    location / {
        root   /usr/share/nginx/html/siteB;
        index  index.php index.html index.htm;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    location ~ \.php$ {
         try_files $uri =404;
         root /usr/share/nginx/html/siteB;
         fastcgi_split_path_info ^(.+.php)(/.+)$;
         fastcgi_pass unix:/dev/shm/php5.6-fpm.sock;
         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
         fastcgi_index index.php;
         include fastcgi_params;
    }
}

siteC.conf

server {
    listen       80;
    server_name  siteC.domain.com;

    access_log  /var/log/nginx/siteC.access.log  main;

    location / {
        root   /usr/share/nginx/html/siteC/;
        index  index.php index.html index.htm;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    location ~ \.php$ {
         try_files $uri =404;
         root /usr/share/nginx/html/siteC/;
         fastcgi_split_path_info ^(.+.php)(/.+)$;
         fastcgi_pass unix:/dev/shm/php5.6-fpm.sock;
         fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
         fastcgi_index index.php;
         include fastcgi_params;
    }
}

siteD.conf

server {
    listen       80;
    server_name  siteD.domain.com;

    access_log  /var/log/nginx/siteD.access.log  main;

    location ~ ^/(baidu|webscan|yx_scan) {
        root /usr/share/nginx/siteD;
    }

    location / {
       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 User-Agent $http_user_agent;
       proxy_set_header Accept-Encoding "";
       proxy_redirect off;
       proxy_pass http://127.0.0.1:8080/siteD/;
       rewrite ^/WebGoat/(.*)$ / last;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

Nginx Info (installé avec apt, mainline)

nginx version: nginx/1.11.9
built by gcc 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3) 
built with OpenSSL 1.0.1f 6 Jan 2014
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -Wl,--as-needed -pie'

Journal des erreurs de débogage Nginx

2017/02/22 11:29:27 [notice] 6335#6335: using the "epoll" event method
2017/02/22 11:29:27 [notice] 6335#6335: nginx/1.11.9
2017/02/22 11:29:27 [notice] 6335#6335: built by gcc 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
2017/02/22 11:29:27 [notice] 6335#6335: OS: Linux 3.13.0-100-generic
2017/02/22 11:29:27 [notice] 6335#6335: getrlimit(RLIMIT_NOFILE): 1000000:1000000
2017/02/22 11:29:27 [notice] 6336#6336: start worker processes
2017/02/22 11:29:27 [notice] 6336#6336: start worker process 6337
2017/02/22 11:30:27 [info] 6337#6337: *1 client timed out (110: Connection timed out) while waiting for request, client: 117.34.28.13, server: 0.0.0.0:80
2017/02/22 11:30:49 [info] 6337#6337: *2 client timed out (110: Connection timed out) while waiting for request, client: 47.90.50.49, server: 0.0.0.0:80
2017/02/22 11:38:44 [info] 6337#6337: *3 client timed out (110: Connection timed out) while waiting for request, client: 183.61.236.14, server: 0.0.0.0:80
2017/02/22 11:38:44 [info] 6337#6337: *4 client timed out (110: Connection timed out) while waiting for request, client: 124.95.168.140, server: 0.0.0.0:80
2017/02/22 11:38:45 [info] 6337#6337: *5 client timed out (110: Connection timed out) while waiting for request, client: 61.182.137.6, server: 0.0.0.0:80
2017/02/22 11:38:46 [info] 6337#6337: *6 client timed out (110: Connection timed out) while waiting for request, client: 117.27.149.14, server: 0.0.0.0:80
2017/02/22 11:38:50 [info] 6337#6337: *7 client timed out (110: Connection timed out) while waiting for request, client: 42.236.7.68, server: 0.0.0.0:80
2017/02/22 11:38:58 [info] 6337#6337: *8 client timed out (110: Connection timed out) while waiting for request, client: 124.95.168.140, server: 0.0.0.0:80
2017/02/22 11:38:59 [info] 6337#6337: *9 client timed out (110: Connection timed out) while waiting for request, client: 61.182.137.6, server: 0.0.0.0:80
2017/02/22 11:38:59 [info] 6337#6337: *10 client timed out (110: Connection timed out) while waiting for request, client: 183.61.236.14, server: 0.0.0.0:80
2017/02/22 11:39:02 [info] 6337#6337: *11 client timed out (110: Connection timed out) while waiting for request, client: 117.27.149.14, server: 0.0.0.0:80
2017/02/22 11:39:12 [info] 6337#6337: *12 client timed out (110: Connection timed out) while waiting for request, client: 124.95.168.140, server: 0.0.0.0:80
2017/02/22 11:39:12 [info] 6337#6337: *13 client timed out (110: Connection timed out) while waiting for request, client: 61.182.137.6, server: 0.0.0.0:80
2017/02/22 11:39:15 [info] 6337#6337: *14 client timed out (110: Connection timed out) while waiting for request, client: 183.61.236.14, server: 0.0.0.0:80
阿神
阿神

闭关修行中......

répondre à tous(3)
某草草

Cette question a reçu une réponse sur v2ex et une réponse de @Showfom La raison est que le nom de domaine n'a pas été enregistré et a été bloqué par la salle informatique

.
Peter_Zhu

Cela semble être la valeur par défaut, il est donc préférable de ne pas utiliser de caractères génériques

server {
    listen 80 default;
    return 404 'no site found';
}
Peter_Zhu

Vérifiez si le nom de domaine est effectivement résolu sur le serveur. S'il n'est pas résolu correctement, définissez la résolution correcte auprès de l'opérateur du nom de domaine.

Vérifiez les paramètres du pare-feu du serveur et activez les restrictions d'accès au port 80. Vérifiez également si l'opérateur du serveur a défini les paramètres du pare-feu.

Après avoir configuré nginx, vous pouvez tester s'il est disponible sur le serveur.

curl siteA.domain.com

Si le nom de domaine est dans un état non résolu

echo '127.0.0.1 siteA.domain.com' >> /etc/hosts
systemctl restart nginx
curl siteA.domain.com

Si le serveur n'est pas accessible normalement, le problème se produit dans la configuration de nginx.
Si le serveur est accessible mais pas localement, le problème se produit dans la résolution du nom de domaine ou dans le pare-feu.

À en juger par mes connaissances limitées en matière de configuration de Nginx, il n'y a pas grand-chose de mal à cela.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!