如何使用htaccess忽略来自漂亮URL的文件夹

时间:2013-08-07 14:35:55

标签: php .htaccess

我正在开发一个网站,假设example.com和一个位于example.com/blog的博客。 网站语言是PHP(我自己设计和编程),我使用wordpress作为博客。

我尝试在网站的主要部分使用漂亮的URL,通过htaccess中的代码将example.com/services.php转换为example.com/services:

# BEAUTIFUL URL
RewriteBase /
DirectorySlash Off
# remove trailing slash
RewriteRule ^(.*)\/(\?.*)?$ $1$2 [R=301,L]
# rewrite /dir/file?query to /dir/file.php?query
RewriteRule ^([\w\/-]+)(\?.*)?$ $1.php$2 [L,T=application/x-httpd-php]

该网站的主要部分工作正常。但是当我尝试加载博客时,我必须在URL的末尾添加一个尾部斜杠以使其正常工作。

http://www.example.com/blog>> 403禁止错误

http://www.example.com/blog/>>正确加载

我试图在使用htaccess的URL后添加尾部斜杠,但我不知道这是最好的解决方案吗?任何人都可以建议一种方法来忽略博客文件夹受美丽的网址影响吗?

2 个答案:

答案 0 :(得分:0)

我处理这个问题的简单方法是创建一个名为blog.php的文件,它只是重定向到example.com/blog /.

答案 1 :(得分:0)

RewriteCond %{REQUEST_URI} !^/blog

在RewriteRules之上。

没有测试过,我认为它应该可行