htaccess / rewriterule和虚拟文件夹

时间:2013-02-28 00:12:07

标签: php .htaccess mod-rewrite

过去我曾通过Google使用此网站几次,并找到了有用的问题帮助。现在我想问自己的问题,并因此注册。所以,“大家好!”

我的“问题”涉及htaccess-rewriterule和PHP / HTML。 假设我有一个网址“http://www.mydomain.com/showdata.php?ID=9”,我想重写为“http://www.mydomain.com/person/firstname-lastname-9.php”。我的计划是“人”只是一个虚拟目录。 重写部分没有问题:

RewriteRule ^person/(.*)-(\d+)\.php$ /showdata.php?ID=$2

新的URL指向MySQL数据库中的正确条目。问题是没有加载CSS文件,导航中的所有链接都指向“person”文件夹。 我以为我可以“链接”到虚拟文件夹,因为htaccess会将浏览器引导到服务器上的真实文件。我实际上可以创建文件夹“person”并在其中复制包含文件,但这意味着我必须在源代码中更改很多路径。这是一个很混乱的工作,我宁愿避免这种情况。 有没有办法拥有一个虚拟文件夹(用于关键字),但仍然有php脚本包含主文件夹中的文件?

1 个答案:

答案 0 :(得分:0)

为css,js和图像添加更多规则..

我假设您的css / js / images位于文件夹中,名称为“css”,“js”,“images”

e.g

RewriteRule (.*)/(images|css|js)/(.*) /$1/$2 [L]
# | means OR  , [L] means last rule i.e. do not continue to process other rules after this.