Chúng tôi đã có nginx chạy trên Ubuntu Trusty. Nó phục vụ một số trang web qua https, chạy trên một địa chỉ IP.
Ngẫu nhiên, mặc dù có vẻ hơi liên quan đến tải công việc, đôi khi các yêu cầu đơn lẻ xuất hiện trên vhost sai. Điều này dẫn đến các yêu cầu lustrum.thalia.nu
được phục vụ bởi thalia.nu
và ngược lại. Điều này sau đó cung cấp cho các trang lỗi khó chịu khi người dùng đột nhiên kết thúc trên một trang web khác. Khi bạn nhấn F5, người dùng sẽ kết thúc mục tiêu ban đầu một lần nữa.
Dường như trình duyệt hoặc hệ điều hành không liên quan. Điều đó đã được xác nhận là xảy ra trên Firefox (Linux, Windows, Mac), Edge (Windows) và Chrome (Linux, Windows, Android) và Safari (iOS).
Vấn đề dường như xảy ra thường xuyên hơn khi hệ thống được đặt dưới tải, gợi ý một số điều kiện cuộc đua.
ham muốn.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;
}
}
Như bạn có thể thấy, chúng tôi đang chạy các nhóm PHP5-FPM khác nhau cho hai miền này. Các nhóm này được phân bổ vào các thư mục khác nhau và chạy như những người dùng khác nhau. Cấu hình của PHP-FPM khá chuẩn theo như tôi có thể nói.
Chúng tôi đã thử cả nginx 1.4.6-ubfox3 và nginx 1.8.0-1 + đáng tin cậy.
Đăng nhập từ xa
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"
Trong dòng này, bạn có thể thấy rằng yêu cầu cho trang /committees
đột nhiên được chuyển hướng đến wp-admin
. Có vẻ như yêu cầu /committees
đã được xử lý bởi nhóm thalia-lustrum
PHP-fpm ...
Tệp vùng DNS
Chúng tôi không thấy làm thế nào điều này có thể có liên quan, nhưng ...
;; 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:
tiêu đề http và tác nhân người dùng không? Xem tại đây để biết cách: serverfault.com/questions/636790/ . Trên thực tế tôi đã cố gắng thực hiện một số yêu cầu cho trang web của bạn nhưng không thể tái tạo vấn đề của bạn. Khách hàng nào bạn đang sử dụng để tái tạo điều này?
config.php
không tìm thấy.