- 论坛徽章:
- 0
|
配置了一个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 [error] 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 [error] 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" |
|