【问题标题】:.htaccess and Wordpress - subdirectories not rewriting.htaccess 和 Wordpress - 子目录不重写
【发布时间】:2012-07-02 19:15:24
【问题描述】:

我在一个托管帐户上托管多个域。其中一个域使用 Wordpress 并位于子目录 (/foo) 中,而另一个位于主目录中。我已成功更改根 .htaccess 文件以将 Wordpress 站点的主页重写为正确的域,但 Wordpress 站点的后续页面未重写。

Example: foo.com (Wordpress site) 
         bar.com (other site in root)

bar.com/foo 正确显示为 foo.com....但是 bar.com/foo/page1 没有重写并且按原样显示(而不是 foo.com/page1)。我正在寻找重写而不是重定向。我在根文件夹中使用的 .htaccess 代码如下。我没有更改由 Wordpress 在 bar.com/foo 中创建的默认 .htaccess 文件。我错过了什么吗?非常感谢任何帮助。

RewriteEngine On 
RewriteBase / 
RewriteCond %{REQUEST_URI} !^/foo/ 
RewriteCond %{HTTP_HOST} ^(www\.)?foo\. 
RewriteRule ^(.*)$ foo/$1 [L] 

【问题讨论】:

  • 但是 bar.com/foo/page1 没有重写,而是按原样显示(而不是 foo.com/page1)。我没有看到任何影响bar.com/foo/page1 的规则,为什么它会显示为其他任何内容?
  • 我对 .htaccess 规则不是很熟悉。我将如何重写这些页面?

标签: wordpress .htaccess rewrite


【解决方案1】:

我将如何重写这些页面?

如果您希望bar.com/foo/page1 的请求在地址栏中显示为foo.com/page1,则需要重定向(而不是像上面那样的内部重写。它看起来像这样:

RewriteCond %{HTTP_HOST} bar\.com$ [NC]
RewriteRule ^foo/(.*)$ http://foo.com/$1 [R=301,L]

【讨论】:

    猜你喜欢
    • 2014-03-29
    • 2019-01-27
    • 2012-05-06
    • 1970-01-01
    • 1970-01-01
    • 2014-11-21
    • 2012-03-21
    • 2023-03-19
    • 1970-01-01
    相关资源
    最近更新 更多