我最近在我的wamp服务器上设置了wordpress,当通过localhost加载网页时,它将始终完全加载整个页面,但当我尝试通过任何其他计算机访问网页时(即使计算机连接到LAN),它将只渲染像HTML模板,没有渲染图片,只有框大纲,
看来该网站在线时没有加载css文件,但后来我想知道为什么它可以在本地主机上运行.
我已经尝试从wordpress.org重新安装wordpress,并完全看了解说明并试图在网上寻找一些答案,但是空白了
电脑资讯:
WAMP服务器Dreamweaver
*在网站设置期间,问题可能来自Dreamweaver吗?
我看到了一个非常类似于这个的问题,但是对于今天的Mediawiki.您可能已使用127.0.0.1
或配置了Wordpress localhost
作为您的IP地址,而不是您的实际 IP地址.
您必须在wp_options
表中进行更改,您需要更改两个条目:选项ID 1 - siteurl - 更改http://localhost/
为http://<your local ip>
; 选项ID 36 - 主页 - 更改http://localhost/
为 http://<your local ip>
主要问题是因为wordpress使用来自数据库的服务器地址,wordpress使用来自数据库选项命名的根URL home
,siteurl
所以如果你尝试在他们的计算机外部访问wordpress,它可能会得到不正确的css和javascript路径.
如果要在不进行重定向的情况下获取正确的路径,可以在下面定义动态根URL wp-config.php
在下面添加此脚本 define('ABSPATH', dirname(__FILE__) . '/');
/** * get home url from absolute path * @return string url to main site * hello@lafif.me */ 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['HTTP_HOST']; $home_url = "${protocol}://${domain}${disp_port}${base_url}"; return $home_url; } $url = get_dynamic_home_url(); define('WP_SITEURL', $url); define('WP_HOME', $url);
我认为这与进行加工http://localhost/
,http://localhost/wp/
,http://127.0.0.1/
,或者http://yoursite.dev/