我的服务器上有一个名为'work'的文件夹,其中包含 .html 文件。现在所有文件都有 .php 扩展名,但客户端仍然有.html文件的旧链接。我不想要将所有.html文件从服务器的根目录重定向到.php版本,我只想在“工作”文件夹中应用此规则。
从根本上我会使用:
RewriteRule ^(.*)\.html$ $1.php [L]
工作得很好。问题是我现在有以下规则适用于root(由wordpress用于永久链接)
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
所以它打破了我设置的任何重定向。以前我使用以下方法单独设置每个:
RewriteRule /work/index\.html /work/index\.php [RP]
所以我想知道是否有一种方法可以使用一对一的规则将'work'文件夹中的所有.html链接重定向到.php版本。如果不这样做,我将如何单独设置重定向?
编辑:我在IIS上使用ISAPI重写
答案 0 :(得分:1)
使用此规则:
RewriteRule ^(work)/([^.]+)\.html$ /$1/$2.php [R,L,NC]