He migrado de Apache 2 a nginx y tengo problemas para administrar mi control de subdominio. lo que quiero: Cuando se solicita x.domain.tld, internamente reescritura de DOMAIN.TLD/xconfiguración del servidor nginx: subdominio en la carpeta
El problema que tengo es que nginx siempre vuelve a dirigir la página diciéndole al navegador para redirigir a. Pero lo que realmente quiero es hacer esto internamente, como lo hizo Apache 2. Además, si yo sólo pido x.domain.tld, nginx devuelve un 404. Sólo funciona cuando hago x.domain.tld/index.php
Aquí está mi config:
server {
listen 80 default;
server_name _ domain.tld www.domain.tld ~^(?<sub>.+)\.domain\.tld$;
root /home/domain/docs/;
if ($sub) {
rewrite (.*) /$sub;
}
# HIDDEN FILES AND FOLDERS
rewrite ^(.*)\/\.(.*)$ @404 break;
location = @404 {
return 404;
}
# PHP
location ~ ^(.*)\.php$ {
if (!-f $request_filename) {
return 404;
}
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/etc/nginx/sockets/domain.socket;
}
}
Gracias!
tratando de reiniciar nginx con su ejemplo produce un error 'fallado: carácter no reconocido después (<' – vladkras
Tengo que mencionar que era nginx 1.10.1 – vladkras