歡迎您光臨本站 註冊首頁

請教nginx rewrite的規則為什麼沒有生效?

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

請教nginx rewrite的規則為什麼沒有生效?

配置了一個nginx的站點,需求是這樣的:
1.  訪問/images/*時,從站點根目錄下的/view/images/*獲取。
2.  訪問/css/*時,從站點根目錄下的/view/css/*獲取。
3.  其他文件,均從/control/*獲取。

下面是配置,但是發現無論是images還是css,都執行了這條rewrite規則: rewrite ^/(?!control/)(.*) /control/$1 last;
上面的兩條根本沒有發生作用,不知道是怎麼回事?server
{
       listen       80;
       server_name www.abcd.com;
       root /www/abcd;
       index index.html index.php;
      
       rewrite ^/images/(.*)$ /view/images/$1 last;
       rewrite ^/css/(.*)$ /view/css/$1 last;
       rewrite ^/(?!control/)(.*) /control/$1 last;

       error_page 404   /control/index.php;
       location ~ .*\.php$ {
       fastcgi_pass   127.0.0.1:9000;
       fastcgi_index  index.php;
       fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
       include  fastcgi_params;
       }
}如下是nginx 的響應錯誤日誌:
2010/04/07 06:05:39 12949#0: *11526 open() "/www/abcd/control/view/css/style.css" failed (2: No such file or directory), client: 111.12.153.106, server: abcd.com, request: "GET /css/style.css HTTP/1.1", host: "abcd.com", referrer: "http://abcd.com/login.php"
2010/04/07 06:05:39 12949#0: *11522 open() "/www/abcd/control/view/images/logo.gif" failed (2: No such file or directory), client: 111.12.153.106, server: abcd.com, request: "GET /images/logo.gif HTTP/1.1", host: "abcd.com", referrer: "http://abcd.com/login.php"
《解決方案》

哪位高手能指點指點?
《解決方案》

頂一下,幫忙指點一下。謝謝!
《解決方案》

() "/www/abcd/control/view/images/logo.gif" failed (2: No such file or directory), client:



沒有這個文件 問下路徑對不對
《解決方案》

() "/www/abcd/control/view/images/logo.gif" failed (2: No such file or directory), client:



沒 ...
mitmax 發表於 2010-04-10 22:26 http://linux.chinaunix.net/bbs/images/common/back.gif


    這應該就是樓主要問的問題
參考:
http://wiki.nginx.org/NginxChsHttpRewriteModule
搞清楚你那3句關於rewrite的語法用途
參考這個連接中基於目錄部分的配置
《解決方案》

rewrite ^/(?!control/)(.*) /control/$1 last;這條有問題,!如何匹配control,看看正則規則

[火星人 ] 請教nginx rewrite的規則為什麼沒有生效?已經有729次圍觀

http://coctec.com/docs/service/show-post-18103.html