2

我正在尝试在我的本地 MAC 上为 Wordpress 多站点设置开发环境。我正在使用 PHPStorm 和内置的 PHP 网络服务器进行开发。内置网络服务器的限制之一是不支持 apache mod_rewrite,而是使用路由脚本。然而,很少有关于从 .htaccess 规则转换成这些的明确文档。

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) wordpress/$1 [L]
RewriteRule ^(.*\.php)$ wordpress/$1 [L]
RewriteRule . index.php [L]

是我从哪里开始的,基本的 Wordpress 重定向 htaccess 用于在其自己的目录(/wordpress)中使用 Wordpress 的多站点......有人可以为我指出如何将其转换为路由脚本的资源的好方向吗?

4

1 回答 1

1

所以我们终于设法让它发挥作用(至少为每个站点使用不同的域)。下面是它所做的:在 wp-config.php 的开头附近添加一行来检测主机名并用它定义一个常量:

define('APP_HOST', $_SERVER['HTTP_HOST']);

然后进行以下 wp-config 更改:

/** URL to wp-content directory */
define('WP_CONTENT_URL', 'http://' . APP_HOST . '/wp-content');

/** Domain name of default WordPress website */
define('DOMAIN_CURRENT_SITE', APP_HOST);

(请注意,我们的 wp-content 文件夹与我们的 wordpress 文件夹、我们的设置首选项是分开的,因此我们可以从 git 更新 WP 而不是 [据我所知] 必需的。)

从那里它应该根据您的服务器运行的主机名“更新”自身。我们发现的限制是内置 Web 服务器不会运行 SSH(因此没有 SSH Admin),并且它不会执行 /wordpress/wp-admin 重定向。因此,要访问 wp-admin,您需要使用 local.sitename.com/wordpress/wp-admin/ 到达那里。尾部斜杠也很重要,因为它不会自动添加它。

于 2015-08-04T15:38:40.450 回答