【发布时间】:2016-02-07 17:23:23
【问题描述】:
我为网络资源管理编写了一个 .htaccess 文件。
我希望这种 URI 模式用于静态资源
^.*/web-console/static/(.*)$
而且,我的 RewriteRule 如下。
RewriteRule "^.*/web-console/static/(.*)$" "resources/floworks-web-console-1.0/static/$1" [L]
而且,我请求低于 URI
http://myhost/shop/web-console/static/css/default.css
但是 Apache 服务器没有匹配 URI。
如果我删除“/web-console”,Apache 工作正常。
下面是重写规则
RewriteRule "^.*/static/(.*)$" "resources/floworks-web-console-1.0/static/$1" [L]
有什么问题?
附录
这是我的目录结构
网络基础 - /data/web
网站基础 - /data/web/shop
htaccess - /data/web/shop/.htaccess
路由器脚本 - /data/web/shop/route.php
静态资源 - /data/web/shop/resources/floworks-web-console-1.0/static
css 文件 - /data/web/shop/resources/floworks-web-console-1.0/static/css/default.css
所以,如果 URI 启动,我希望响应静态资源 /shop/web-console/static
并且,其他情况是使用“RewriteRule .* route.php [L]”传递给路由器脚本
【问题讨论】:
-
所以 web-console 不是一个真正的目录?
-
是的,那不是真的
标签: apache .htaccess mod-rewrite