我想在某些文件夹(/ blog)中将所有URL重写为某个文件(/blog/post.php),除了几个文件(当然是/blog/post.php和目录/博客的根目录) /index.php或/ blog /)。因此我有这个:
RewriteRule ^blog/index.php - [L]
RewriteRule ^blog/post.php - [L]
RewriteRule ^blog/(.*) /blog/post.php [L,QSA]
预期结果是除index.php和post.php之外的所有URL都被重写为post.php 问题是如果我把它放在站点根目录的.htaccess中,当你只输入website.com/blog/时它会重写到page.php,而website.com / blog / index.php却没有。 如果我将相同的代码放在博客文件夹中的.htaccess文件中(但每行中没有“博客”一词),它会按预期/需要的方式工作。
我很抱歉另一个RewriteRule问题,但它是一个我无法找到的具体示例/问题,如果有人有任何提示,我将非常感激。
答案 0 :(得分:1)
让您的单一规则如下:
RewriteCond %{REQUEST_URI} !/blog/(index|post)\.php$ [NC]
RewriteRule ^blog/(.+)$ /blog/post.php [L]