我有一个站点,其中包含一组已放入 CMS 的旧 .html 和 .php 页面。
目前在 .htaccess 文件中大约有 30 个 mod_alias 重定向,格式如下:
redirect 301 /oldpage1.html http://www.example.com/newpage1.php
redirect 301 /oldpage2.php http://www.example.com/newpage2.php
redirect 301 /oldpage3.php http://www.example.com/newpage3.php
但是我们想使用 mod_rewrite 在我们的 CMS 中拥有漂亮的 URL,它将采用 形式http://www.example.com/pagename.php
,所以也有以下内容:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?page=$1
目前两者都被一起应用,结果是:
http://www.example.com/newpage1.php?page=oldpage1.html
仅当 mod_alias 重定向 301 语句未进行匹配时,如何应用重写规则,以便发生以下情况:
http://www.example.com/oldpage1.html
-> 重定向到 ->
http://www.example.com/newpage1.php
-> 被视为 ->
http://www.example.com/index.php?page=/newpage1.php
任何提示将不胜感激?谢谢。