Kami menjalankan nginx di Ubuntu Trusty. Ini melayani beberapa situs web melalui https, berjalan pada satu alamat ip.
Secara acak, meskipun tampaknya sedikit terkait dengan beban kerja, kadang-kadang satu permintaan muncul di vhost yang salah. Ini mengarah pada permintaan untuk lustrum.thalia.nu
dilayani oleh thalia.nu
dan sebaliknya. Ini kemudian memberikan halaman kesalahan yang buruk karena pengguna tiba-tiba berakhir di situs web yang berbeda. Saat Anda menekan F5, pengguna kemudian berakhir pada target asli lagi.
Tampaknya tidak terkait browser atau sistem operasi. Sudah dikonfirmasi untuk terjadi di Firefox (Linux, Windows, Mac), Edge (Windows) dan Chrome (Linux, Windows, Android) dan Safari (iOS).
Masalah ini muncul lebih sering terjadi ketika sistem berada di bawah beban, menunjukkan semacam kondisi balapan.
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;
}
}
Seperti yang Anda lihat, kami menjalankan kumpulan PHP5-FPM yang berbeda untuk kedua domain ini. Kumpulan ini chroot ke folder yang berbeda dan dijalankan sebagai pengguna yang berbeda. Konfigurasi PHP-FPM sebaliknya cukup standar sejauh yang saya tahu.
Kami telah mencoba nginx 1.4.6-ubuntu3 dan nginx 1.8.0-1 + trusty.
Log telemetri
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"
Di baris ini Anda dapat melihat bahwa permintaan halaman /committees
tiba-tiba dialihkan ke wp-admin
. Tampaknya permintaan untuk /committees
ditangani oleh thalia-lustrum
kumpulan PHP-fpm ...
File zona DNS
Kami tidak melihat bagaimana ini mungkin relevan, tetapi ...
;; 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:
header http dan agen pengguna? Lihat di sini untuk caranya: serverfault.com/questions/636790/… . Sebenarnya saya mencoba membuat beberapa permintaan ke situs web Anda tetapi tidak mereproduksi masalah Anda. Klien apa yang Anda gunakan untuk mereproduksi ini?
config.php
tidak ditemukan.