【发布时间】:2014-11-11 11:52:03
【问题描述】:
在 WordPress 网站中,所有以 /iframe/ 结尾的 URL 都应重写为 ?iframe=1,例如:
mysite.com/page1/iframe/ 应改写为 mysite.com/page1?iframe=1
为了好玩,我尝试了以下方法:
RewriteRule ^(.*)/iframe/$ http://microsoft.com [L]
这符合我的预期。 RegEx 应该是正确的。 接下来,我尝试了这个:
RewriteRule ^(.*)/iframe/$ /$1?iframe=1
在 WordPress 自己的规则上下文中,完整的文件如下所示:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# Here goes my line:
RewriteRule ^(.*)/iframe/$ /$1?iframe=1
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
但是,尽管我做了很多尝试和变化,但我唯一不断得到的就是 404。 我哪里错了?
【问题讨论】:
-
@Prix:不,/iframe/ 在这个 WordPress 安装中不存在。它应该是可以附加到任何现有 WordPress 资源的后缀。 domain.com/page1?iframe=1 在没有 RewriteRule 的情况下也可以工作。但是,服务器必须将 /iframe/ 重写为 ?iframe=1。
标签: wordpress .htaccess url mod-rewrite url-rewriting