Mam następujący fragment konfiguracji nginx:Nginx Usuń www i reagować zarówno
server {
listen 80;
server_name mydomain.io;
root /srv/www/domains/mydomain.io;
index index.html index.php;
access_log /var/log/nginx/domains/mydomain.io/access.log;
error_log /var/log/nginx/domains/mydomain.io/error.log;
location ~\.php {
try_files $uri =404;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_intercept_errors on;
fastcgi_pass 127.0.0.1:9000;
include /etc/nginx/fastcgi_params;
}
}
Po pierwsze, w jaki sposób mogę dokonać blokowy serwera reagować na both
http://www.mydomain.io a także http://mydomain.io. Po drugie, chcę wymusić, jeśli pochodzą z http://www.mydomain.io, aby przekierować do http://mydomain.io.
Dzięki.
Korzystanie if w konfiguracjach nginx zdecydowanie nie zaleca się: http://wiki.nginx.org/IfIsEvil. Zamiast tego używaj dwóch bloków serwerów zgodnie z sugestią @Gerry – Jrgns
@Jrgns: Również "przepisywanie" jest wymienione jako jeden z dwóch "100% bezpiecznych rzeczy, które mogą być wykonane wewnątrz, jeśli w kontekście lokalizacji" w wiki nginx ... – Tisho
Jeśli to dostaje wystarczającą liczbę głosów w dół, że jej wartość jest ujemna, czy system nadal zachowuje ją jako wybraną odpowiedź? – Bryson