Nginx는 모든 도메인 이름을 하나의 웹사이트로 리디렉션합니다.

Nginx는 모든 도메인 이름을 하나의 웹사이트로 리디렉션합니다.

Nginx와 PHP FPM을 사용하여 서버를 설정하려고 하는데 문제가 있습니다.

각 웹사이트마다 Nginx 가상 호스트와 fpm 풀을 설정했습니다. 문제는 기본 웹사이트가 아니더라도 모든 도메인이 동일한 웹사이트를 표시한다는 것입니다.

다음은 몇 가지 샘플 구성입니다(변경되지 않은 구성 부분을 제거했습니다).

다른 모든 도메인을 다음으로 리디렉션하는 도메인의 구성은 다음과 같습니다.

server {
        listen 80;
        listen [::]:80;
        root /var/www/site1;
        server_name sitename.com www.sitename.com;

        location ~ \.php$ {
               try_files $uri =404;
                fastcgi_keep_conn on;
                fastcgi_pass unix:/var/run/php5-fpm.site1.sock;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
                fastcgi_read_timeout 36000;
    }
    }

site1.conf파일은 다음 위치에 있습니다 /etc/php5/fpm/pool.d.

[android]
user = site1
listen = /var/run/php5-fpm.site1.sock
listen.owner = www-data //I also tried with site1

사용자를 만들었습니다 useradd -M site1.

폴더 /var/www/site1에는 올바른 권한이 있으며 의 소유입니다 site1.

server_nameNginx의 다른 모든 가상 호스트는 , root및 를 제외하고 이 호스트와 동일합니다 factcgi_pass. 모두 fpm 풀, 사용자 및 사용자 소유 폴더가 있습니다.

default서버 IP가 있는 가상 호스트 listen 80 default도 있지만 server_name서버 IP도 site1로 리디렉션됩니다.

PS 사이트 site1에서 제거 하면 더 이상 작동하지 않습니다./etc/nginx/sites-enabled

내가 여기서 무엇을 놓치고 있는 걸까요?

답변1

문제를 발견했습니다.

sites-available에서 까지의 심볼릭 링크 오류가 발생합니다 sites-enabled. site1만 유효하고 다른 파일은 비어 있습니다.

관련 정보