我有一个使用WordPress的字典网站。现在是任何术语的网址,例如" myterm"形式为:http://domain.com/myterm。我希望它重定向到http://domain.com/definition/myterm。我不知道如何使用正则表达式进行这种重定向。还存在一些网址,例如domain.com/contact-Us和domain.com/FAQ,我不想重定向到/ definition / Contact-us和/ definition / FAQ。有帮助吗?
答案 0 :(得分:0)
在htaccess
中尝试以下操作RedirectMatch ^/myterm$ /definition/myterm
如果myterm是一个dynmic路径,那么你可以使用Regex捕获组来捕获路径值,它将被保存为$ 1以便在目标路径中重用
RedirectMatch ^/(.*)$ /definition/$1
要从重定向中排除特定路径,可以使用
RedirectMatch ^/((?!contect-us|FAQ).*)$ /definition/$1
并且否定更多路径,只需将它们添加到由管道foo | bar | foobar分隔的捕获组中。
编辑:
您还需要从重定向中排除目录,以便它无法重定向到自身。
试试这个
RedirectMatch ^/((?!contect-us|FAQ|defination).*)$ /definition/$1
将“defination”替换为模式和目标中文件夹的名称。
答案 1 :(得分:0)
我的问题已经解决了。我使用了Starkeen提出的重定向。但是,不在.htaccess文件中。我使用了Simple 301 Redirects。它可以正常工作而不会与WordPress规则冲突。