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_name
Nginx의 다른 모든 가상 호스트는 , 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만 유효하고 다른 파일은 비어 있습니다.