nginx中可以使用rewrite配置url的重定向,,rewrite指令可以位于server段,,也可以位于location中,,配置rewrite后通過/usr/local/nginx/sbin/nginx -t檢查配置時,,出現(xiàn)如下錯誤: nginx: [emerg] directive "rewrite" is not terminated by ";" in /usr/local/nginx/conf/nginx.conf:139 nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed 解決的辦法是把規(guī)則段使用引號引起來,。例如: rewrite ^/u_(.{7})\.js$ /action/js.php?i=$1 break; 修改為 rewrite "^/u_(.{7})\.js$" /action/js.php?i=$1 break; 本條可以不用引號 rewrite ^/u_(\d+)\.js$ /action/js.php?i=$1 break; 為什么有些必須要引號,有些又可以省略呢,,仔細看第一條規(guī)則,,里面出現(xiàn)了符號 “{、}”,,應(yīng)該是它造成的,,因為配置文件中都是用它來作為配置的段起止標記,所以為了安全起見,,最好還是都帶上引號,。 |
|
來自: java_laq小館 > 《nginx》