0

我在本地安装了 WordPress 网络并使用 MAMP Pro 运行服务器。我想从同一 LAN 中的另一台计算机或设备查看所有站点。

有没有一种干净简单的方法来做到这一点?

我有 MAMP 设置,以便它进入一个名为 Sites 的文件夹。在该文件夹中,每个项目都有自己的文件夹。有些项目只是简单的 HTML 和 CSS。我可以从我的 iPad 上很好地查看它们。一个项目是 WordPress 安装,我无法加载该文件夹。我的猜测是这与 MySQL 和试图访问它的不同 IP 有关。

4

2 回答 2

3

主要问题是因为 wordpress 使用数据库中的服务器地址,wordpress 使用命名数据库选项中的根 url homesiteurl因此如果您尝试在他们的计算机之外访问 wordpress,它可能会得到不正确的 css 和 javascript 路径。

如果您想在不进行重定向的情况下获得正确的路径,您可以在下面定义动态根 urlwp-config.php

在下面添加这个脚本define('ABSPATH', dirname(__FILE__) . '/');

/**
 * get home url from absolute path
 * @return string url to main site
 * lafif@astahdziq.in
 */
function get_dynamic_home_url(){
    $base_dir  = ABSPATH; // Absolute path
    $doc_root  = preg_replace("!${_SERVER['SCRIPT_NAME']}$!", '', $_SERVER['SCRIPT_FILENAME']);
    $base_url  = preg_replace("!^${doc_root}!", '', $base_dir);
    $protocol  = empty($_SERVER['HTTPS']) ? 'http' : 'https';
    $port      = $_SERVER['SERVER_PORT'];
    $disp_port = ($protocol == 'http' && $port == 80 || $protocol == 'https' && $port == 443) ? '' : ":$port";
    $domain    = $_SERVER['SERVER_NAME'];
    $home_url  = "${protocol}://${domain}${disp_port}${base_url}";

    return $home_url;
}
$url = get_dynamic_home_url();
define('WP_SITEURL', $url);
define('WP_HOME', $url);
于 2015-09-23T14:26:10.267 回答
1

完成这项工作的关键是将您的 WordPress 和站点 URL 更改为您的 IP 地址 + MAMP 端口,在 WordPress 仪表板的设置 > 常规中。

例如,如果这些 URL 当前是localhost,您应该将它们设置为mysite.local:8888

如果/当您将 WordPress 安装移动到另一台服务器时,请记住将这些 URL 更改回正确的值。

于 2013-02-08T16:07:32.627 回答