nginx - konflik peraturan proksi?
ringa_lee
ringa_lee 2017-05-16 17:26:41
0
1
1088
location ~ /(test1|test2|test3|test4) {
        proxy_set_header Host "test.com";
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_pass http://127.0.0.1;
}

if ($request_filename !~* ^/(.*)\.(zip|js|ico|css|php|xml|txt|html|swf|apk|ipa|plist)$) {
                rewrite ^/(.*)$ /index.php last;
 }

Peraturan proksi di atas tidak akan berkuat kuasa Jika anda memadamkan peraturan penulisan semula, adakah terdapat konflik? Bagaimana untuk mengubah suainya?

ringa_lee
ringa_lee

ringa_lee

membalas semua(1)
小葫芦

tulis semula mempunyai keutamaan yang lebih tinggi, menyebabkan laluan ditulis semula terlebih dahulu. Anda boleh menggunakan lokasi sebaliknya untuk memadankan. rewrite 优先级较高,导致路径已经先被重写了。可以都改用location去匹配。

    location ~ /(test1|test2|test3|test4) {
            proxy_set_header Host "test.com";
            proxy_set_header X-Forwarded-For $remote_addr;
            proxy_pass http://127.0.0.1:8080;
    }

    location ~* ^/(.*)\.(zip|js|ico|css|xml|txt|html|swf|apk|ipa|plist)$ {
        rewrite ^/(.*)$ /index.php last;
    }

    location ~ \index.php$ {
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_hide_header X-Powered-By;
    }  

不过确定 静态文件也要重写到 index.php rrreee

Tetapi adakah anda pasti fail statik juga perlu ditulis semula ke index.php? 🎜
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan