如何在wordpress网站上添加其他mod_rewrite规则?

问题描述

| 我已将文件'events.PHP \'上传到我的WordPress网站wordpress安装在我的根目录中)。 我想对此文件进行mod_rewrite,以便可以转到mydomain.com/events 我只是尝试做这样的事情:
# BEGIN wordpress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteRule %events$ events.PHP [L]

RewriteRule ^index\\.PHP$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.PHP [L]
</IfModule>

# END wordpress
哪个没有用。 我还发现我可以使用它的内置功能通过wordpress添加重写标签,如下所示:
add_rewrite_rule(\'^events?\',\'/events.PHP\',\'top\');
这也行不通-我只是进入认的404页面,好像它到达了我的wordpress中不存在的页面一样。 我在这里想念什么?     

解决方法

        如果我错了,请纠正我,但是如果您只想将转到example.com/events的人定向到example.com/events.php,那么您可以像这样进行重定向。 重定向301 / events http://www.example.com/events.php     ,        请尝试以下操作:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^events /events.php [L]
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
您为URL设置的指令不匹配:
RewriteRule %events$ events.php [L]
另外,该指令现在处于检查现有文件的条件之下,因此它永远不会与对events.php的直接请求匹配。