2周前我在计算机上使用静态IP地址(2.231.211.12/wordpress/)测试了一个Wordpress论坛,它运行得很好。
现在我搬家了,我有一个动态的IP地址(地址在http://doghot.altervista.org/ip.txt上不断更新),维护着同一台计算机。 例如,此时论坛的地址为http://82.53.112.71/wordpress/
我的问题是,当我使用浏览器加载论坛时,会上传一些内容而其他内容则没有。后者是图像,css等,他们试图从我过去的IP地址(2.231.211.12)加载,正如你在源代码中看到的那样(一旦加载完成),就好像某个地方有一个绝对路径迫使他们从那里加载。
我说“一旦加载完成”,因为有些东西试图从2.231.211.12上传,整个加载必须等待连接到2.231.211.12被拒绝。需要2/3分钟。
我无法理解Wordpress在哪里读取IP(这不再是我的了!),而且我无法分析源代码来找到问题。
你可以帮帮我吗?
答案 0 :(得分:1)
WordPress并非设计用于没有域名的系统。对于图像(附件),它存储图像的完整URL,包括域名。因此,在您的情况下,它将存储很快将无效的IP地址(如您所见)。
如果您打算继续使用不断变化的IP地址,我建议您:
1)获取域名并在IP地址更改时更改域的IP地址,或
2)每当IP发生变化时,使用PHPMyAdmin或类似方法将旧IP更改为WordPress数据库中的新IP。
答案 1 :(得分:1)
这发生在很多人身上。如果你想要一个gui,你可以使用wordpress的插件来迁移或更改ip地址。我更喜欢直接登录到mysql并发出以下命令:
发出此sql:
SELECT * FROM
wp_options
WHEREoption_name
IN(' siteurl',' home') 那么
change the values of both the options to the new IP or Domain Name (recommended).
如果您没有数据库访问权限,则可以执行以下操作:
use this code in your wp-config.php:
define('WP_HOME','http://ip_or_domain.com');
define('WP_SITEURL','http://ip_or_domain.com');
或者您可以将其添加到您的functions.php:
update_option('siteurl','http://ip_or_domain.com/');
update_option('home','http://ip_or_domain.com/');
如果您的cms内容中有ip,请执行以下sql:
更新wp_posts SET post_content = REPLACE(post_content," http://old_ip_or_domain.com"," http://new_ip_or_domain.com")