Wordpress返回IP地址而不是域

时间:2014-04-17 20:45:16

标签: wordpress apache proxy

这种情况已经有好几年了,直到我做了一些现在已经把它搞砸了......

搜索这个主题让我进入了几个基本上说过的地方:你需要在Wordpress的常规设置中检查Wordpress URL和站点URL。我已经这样做了,他们都是:http://www.petesworkshop.com/blog_wp。然而,当我点击该URL时,我被重定向到我的内部IP并收到错误http://10.0.10.206/blog_wp(是的,这是错误的!

有趣的是,我可以很好地访问管理页面,它只是blog_wp的子文件夹。因此,以某种方式指向/ blog_wp的内容返回IP,但其他一切都没问题。奇怪的。

Wordpress位于Apache代理后面,该代理具有针对虚拟主机的指令:

<VirtualHost *:80>

ServerName www.petesworkshop.com
ServerAlias petesworkshop.com

ProxyPass / http://10.0.10.206:5080/
ProxyPassReverse / http://10.0.10.206:5080/

</VirtualHost>

运行代理服务器后面的网站的服务器有:

DocumentRoot "/www/petes/htdocs/petesworkshop/"
ServerName www.petesworkshop.com
ServerAlias petesworkshop.com
DirectoryIndex index.html index.php index.htm
ErrorLog logs/petesworkshop.log
Options FollowSymLinks

Alias /blog_wp  /www/petes/htdocs/petesworkshop/blog_wp

<Directory /www/petes/htdocs/petesworkshop/blog_wp >
   Order Allow,Deny
   Allow From all
</Directory>

<Directory /www/petes/htdocs/petesworkshop >
   Order Allow,Deny
   Allow From all
</Directory>

我不确定我是怎么解决这个问题的......这可能是我对Apache配置所做的事情,但我无法确定代理背后的其他所有工作正常。我甚至尝试为/ blog_wp添加特定的ProxyPass条目,但这没有任何区别。

...难倒

3 个答案:

答案 0 :(得分:0)

检查你的wp-config.php是否有正确的网址

如下所示

define('WP_HOME','http://example.com');
define('WP_SITEURL','http://example.com');

答案 1 :(得分:0)

这个问题原来是一个Apache代理问题。我需要的是添加&#39; ProxyPreserveHost On&#39;到我最初在那里认为的配置,但我要么在编辑中将其删除,要么将其放在错误的虚拟主机中。无论如何,添加ProxyPreserveHost On标志可以解决问题。不知道为什么同一个虚拟主机DID中的其他条目没有它,但我不会担心它。

答案 2 :(得分:0)

前段时间,我遇到了类似的问题,每当我在浏览器中写入我的域时,它就可以正确解决,但是我的域名已由IP更改,经过大量研究后发现,问题出在托管上,而不是服务器,所以这只会更改GoDaddy中我的域的配置,因为我只进行了重定向,但是正确的做法是创建一个指向@(代表您的域名)的A记录,并且一切开始正常工作。希望对您有帮助