【问题标题】:how to emulate public dir with mod_rewrite如何使用 mod_rewrite 模拟公共目录
【发布时间】:2012-03-04 02:10:26
【问题描述】:

我将我的网站文件保存在/public/ 目录中。

所以,比如访问css文件,如果我们指向绝对html路径,那就是

/public/css/reset.css.

我有处理每个请求的/public/index.php 文件。所以,我的主站点 API 工作正常。

这是我的简单 .htaccess:(在 public 目录之外)

<IfModule mod_rewrite.c>
RewriteEngine On 
RewriteRule !\.(js|ico|gif|jpg|png|css|html)$ public/index.php
</IfModule>

如何添加 mod_rewrite 规则,所以,当我问 mysite.com/css/reset.css 我得到 mysite.com/public/css/reset.css(所以,对于其他文件也是如此)

【问题讨论】:

    标签: mod-rewrite public-html


    【解决方案1】:
    RewriteCond -f public%{REQUEST_URI}
    RewriteRule ^(.+)$ public/$1 [L]
    

    【讨论】:

    • 我试过这个。它不起作用;(当我打开 mysite.com 时,它会打开我网站的目录
    • 只有当我指向 http://mysite.com/public/$1 而不是 public/$1 时它才有效,并且在没有 RewriteCond 的情况下也有效。并且可以不直接重定向?我的意思是不在 url 中显示 /public/ 路径?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多