【问题标题】:htaccess Redirects with Wordpresshtaccess 使用 Wordpress 重定向
【发布时间】:2016-02-29 20:39:38
【问题描述】:

我正在使用 GoDaddy 托管的 Wordpress 网站。

我有用户会尝试转到<mywebsite.com>/jobs,我需要将他们重定向到<mywebsite.com>/newpath/corporate-opportunities/

我的印象是我可以将重写规则放置在我的 GoDaddy 托管安装根目录下的 .htaccess 文件中。我有以下内容:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

<IfModule mod_rewrite>
RewriteEngine on
RewriteRule   http://<www.mywebsite.com>/jobs    http://<www.mywebsite.com>/newpath/corporate-opportunities/ [R]
</IfModule>   

第一组规则(在 Wordpress Begin 和 End cmets 中)通常用于 Wordpress 的“永久链接”URL 重写,因此它们很漂亮。 Wordpress 块之后的重写规则是我尝试进行重定向的方式。

我无法让它工作。

【问题讨论】:

标签: wordpress .htaccess mod-rewrite


【解决方案1】:

您需要将重定向规则移动到 上方 WordPress 重写规则集,以便事先看到它们。此外,RewriteRule 模式(第一部分)始终是请求 URI,而不是完全限定的 URL - 当您使用一个域时,您也不需要在替换部分使用完全限定的 URL .最后,您需要 L 标志来停止处理。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^jobs/?$ /newpath/corporate-opportunities/ [R,L]
</IfModule> 

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

【讨论】:

  • 迈克...非常感谢!奇迹般有效。太棒了!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-22
  • 1970-01-01
  • 2017-10-06
  • 2016-12-28
相关资源
最近更新 更多