우분투 트러스티에서 nginx를 실행하고 있습니다. 하나의 IP 주소에서 실행되는 https를 통해 여러 웹 사이트를 제공합니다.
무작위로 작업 부하와 약간 관련이있는 것처럼 보이지만 때때로 단일 요청이 잘못된 가상 호스트를 켤 수 있습니다. 이로 인해 요청이 처리 lustrum.thalia.nu
되고 thalia.nu
그 반대도 마찬가지입니다. 그러면 사용자가 갑자기 다른 웹 사이트로 연결될 때 불쾌한 오류 페이지가 표시됩니다. 를 누르면 F5사용자가 원래 대상을 다시 종료합니다.
브라우저 나 운영 체제와 관련이없는 것 같습니다. Firefox (Linux, Windows, Mac), Edge (Windows) 및 Chrome (Linux, Windows, Android) 및 Safari (iOS)에서 발생하는 것으로 확인되었습니다.
시스템이로드 될 때 문제가 더 자주 발생하여 일종의 경쟁 조건을 제안합니다.
lustrum.thalia.nu
server {
server_name lustrum.thalia.nu;
listen 443 ssl;
ssl on;
ssl_certificate /etc/nginx/certs/lustrum.thalia.nu.crt;
ssl_certificate_key /etc/nginx/certs/lustrum.thalia.nu.key;
add_header Strict-Transport-Security "max-age=63072000; preload";
root /var/www/thalia-lustrum/public_html;
location / {
index index.php;
try_files $uri $uri/ /index.php?$args;
}
# Add trailing slash to */wp-admin requests.
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
# Pass all .php files onto a php-fpm/php-fcgi server.
location ~ [^/]\.php(/|$) {
include /etc/nginx/fastcgi_params;
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
fastcgi_pass unix:/var/run/php5-fpm-thalia-lustrum.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /public_html$fastcgi_script_name;
}
}
thalia.nu
server {
server_name thalia.nu;
listen 443 ssl;
ssl on;
ssl_certificate /etc/nginx/certs/www.thalia.nu.crt;
ssl_certificate_key /etc/nginx/certs/www.thalia.nu.key;
add_header Strict-Transport-Security "max-age=63072000; preload";
root /var/www/thalia/public_html;
location / {
try_files $uri $uri/ /index.php/$request_uri;
index index.php index.html index.htm;
}
location ~ \.php($|/) {
include /etc/nginx/fastcgi_params;
set $script $uri;
set $path_info "";
if ($uri ~ "^(.+\.php)(/.+)") {
set $script $1;
set $path_info $2;
}
fastcgi_read_timeout 120;
fastcgi_pass unix:/var/run/php5-fpm-thalia-www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /public_html$fastcgi_script_name;
}
}
보시다시피,이 두 도메인에 대해 서로 다른 PHP5-FPM 풀을 실행하고 있습니다. 이 풀은 다른 폴더로 루트되며 다른 사용자로 실행됩니다. PHP-FPM의 구성은 내가 알 수있는 한 상당히 표준입니다.
우리는 nginx 1.4.6-ubuntu3와 nginx 1.8.0-1 + trusty를 모두 시도했습니다.
로그 원격 측정
266.266.266.266 - - [25/Nov/2015:09:24:40 +0100] "GET /committees/175 HTTP/1.1" 302 5 "https://thalia.nu/committees" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:42.0) Gecko/20100101 Firefox/42.0" Host: "thalia.nu" Location: "https://thalia.nu/index.php//committees/wp-admin/setup-config.php"
이 줄에서 페이지 요청이 /committees
갑자기로 리디렉션 됨을 알 수 있습니다 wp-admin
. 에 대한 요구가 있음이 나타납니다 /committees
의해 처리되었다 thalia-lustrum
PHP-FPM 풀 ...
DNS 영역 파일
우리는 이것이 어떻게 관련 될 수 있는지 알지 못하지만 ...
;; MX Records
thalia.nu. 300 IN MX 20 relay.transip.nl.
thalia.nu. 300 IN MX 10 ivo.thalia.nu.
;; TXT Records
thalia.nu. 300 IN TXT "v=spf1 a mx a:mulgore.hexon-is.nl a:moonray.hexon-is.nl a:fred.thalia.nu a:ivo.thalia.nu ~all"
;; SPF Records (Sender Policy Framework)
thalia.nu. 300 IN SPF "v=spf1 a mx a:mulgore.hexon-is.nl a:moonray.hexon-is.nl a:fred.thalia.nu a:ivo.thalia.nu ~all"
;; CNAME Records
lustrum.thalia.nu. 300 IN CNAME thalia.nu.
;; A Records (IPv4 addresses)
thalia.nu. 300 IN A 131.174.31.8
www.thalia.nu. 300 IN A 131.174.31.8
ivo.thalia.nu. 300 IN A 131.174.31.8
Host:
http 헤더 및 사용자 에이전트 의 내용을 추가 할 수 있습니까? 방법은 serverfault.com/questions/636790/…을 참조하십시오 . 실제로 귀하의 웹 사이트에 일부 요청을 시도했지만 문제를 재현하지 못했습니다. 이것을 재현하기 위해 어떤 클라이언트를 사용하고 있습니까?
config.php
찾을 수 없다는 간단한 오류가 발생했습니다 .