Ich versuche, meine Nginx-Konfiguration zu redirect von der Web-Root ("/") zu /dir-a und dann, wenn dies eine 404 Redirect zurückgibt zu /dir-b. Ich bin mir nicht ganz sicher, wie oder ob das möglich ist.Nginx Redirect von Web-Root zu einem und wenn 404 dann versuchen b
Das ist, was ich bisher habe ...
server {
listen 443 ssl;
ssl on;
ssl_certificate /xyz.crt;
ssl_certificate_key /xyz.key;
root /var/www/mysite;
index index.php index.html index.htm index.nginx-debian.html;
server_name _;
client_max_body_size 2G;
client_body_buffer_size 128k;
error_page 404 =200 /dir-b;
location =/{
try_files $uri $uri/ /dir-a;
}
# Serve static assets
location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico)$ {
gzip on;
gzip_http_version 1.0;
gzip_vary on;
gzip_comp_level 9;
gzip_proxied any;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;
gzip_buffers 16 8k;
access_log off;
expires max;
add_header Cache-Control public;
break;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_buffer_size 256k;
fastcgi_buffers 8 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_param HTTPS on;
fastcgi_read_timeout 6000;
fastcgi_param APPLICATION_ENV production;
fastcgi_pass unix:/var/run/php5-fpm.sock;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
location ~ /\.ht {
deny all;
}
}
Aber das gibt die 404-Seite, also bin ich, wo nicht sicher, von hier zu gehen. Ich brauche es stattdessen dir-b.
Diese noch in der 404-Seite stecken zu bleiben und nicht dir-b – Tom
mein schlecht, bearbeitet Code –
Immer noch versuchen, stecken bleiben bei 404 für dir-a – Tom