【问题标题】:Multiple WordPress Installs on the same domain在同一个域上安装多个 WordPress
【发布时间】:2013-09-03 23:49:14
【问题描述】:

我发现我在较小的投资组合网站上经常使用 WordPress。我想修正我的开发周期。

我遇到的主要问题是了解如何在单个域上安装多个 WordPress 实例。这样做的原因是不愿意继续在 Apache 中设置新域名以分隔我正在处理的多个站点。

让我明确一点,我想要不同版本的 WordPress,带有指向不同数据库的链接、不同的 MySQL 用户等。我不需要 MultiSite 功能。我很高兴利用子域来实现这一点,但最终我希望我可以将它们安装在不同的路径上:

www.devsite.com/wordpress1 -> WordPress Site 1

www.devsite.com/wordpress2 -> WordPress Site 2

更复杂的是,我正在运行一个节点代理应用程序,该应用程序正在侦听端口 80,并使用 node-http-proxy 将请求重定向到正确的端口号(Apache 正在侦听)。

所以...

我有正确的路径代理到 Apache 上的正确端口,但 WordPress 在其对路径的解释方面表现不佳。我仍处于“安装”阶段,它正在尝试访问www.devsite.com/wp-admin/install.php 而不是www.devsite.com/wordpress1/wp-admin/install.php

是否甚至可以基于不同的域/目录路径运行完全不同的 WordPress 站点?还是我必须使用子域?

【问题讨论】:

  • 据我所知,wordpress 不是侵入性的或任何东西。如果您将它安装在域的目录中,它将在该目录中运行,而不关心同一安装级别的另一个目录是否正在运行自己的安装。您可能需要更新 htaccess 文件以将所有请求指向 /wordpress1/index.php 而不是默认的 index.php。除此之外,我认为实现您所描述的不需要其他任何东西。恐怕我在节点代理这件事上没用
  • @KaiQing 感谢您的意见。如果它是一个简单的 .htaccess 重新路由,您能否提供一个带有 .htaccess 文件示例内容的答案,如果它有效,我将标记为已回答。如果它不起作用,那么我可能不得不接受这是我的节点代理应用程序在搞乱它。

标签: wordpress apache .htaccess


【解决方案1】:

Wordpress 默认的 .htaccess 文件可能需要更新为如下内容:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress1/

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

或者可能:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

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

我还没有测试过这些,所以正式地说这只是一个理论。由于 wordpress 是您安装它的目录的本地目录,因此它不应该关心同一级别的其他目录是否有自己的安装

【讨论】:

  • 似乎还没有工作,但在继续之前会继续玩弄它。毫无疑问,您的指令很好,问题可能出在 Node 代理上。 +1 花费的时间。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多