WordPress将端口8080上的连接重定向到80

时间:2014-02-20 作者:calypso

我有一个wordpress博客,由Ubuntu 12.04上的apache2(端口80)和nginx(端口8080)提供服务。现在,每当客户端通过端口80连接时,一切都很好,但当客户端连接到8080以查看同一个博客时,连接会重定向到apache。为什么会这样?我四处搜索,发现这是Wordpress的一个限制,它将所有连接重定向到仪表板中设置的站点URL(默认为端口80)。

有办法解决这个问题吗?到端口8080的连接将由nginx而不是apache提供服务

/etc/nginx/sites enabled/wordpress目录

server {
listen   8080;

root /var/www;
index index.php index.html index.htm;

server_name abc.com;

location / {
        try_files $uri $uri/ /index.php?q=$uri&$args;
}

location /doc/ {
        alias /usr/share/doc/;
        autoindex on;
        allow 127.0.0.1;
        deny all;
}

error_page 404 /404.html;

error_page 500 502 503 504 /50x.html;
location = /50x.html {
        root /usr/share/nginx/www;
}

location ~ \\.php$ {

        try_files $uri =404;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param   SERVER_PORT 8080;
        port_in_redirect off;
}
非常感谢您的帮助。

2 个回复
SO网友:calypso

我解决了!!方法如下:

编辑当前主题的functions.php 并在打开的PHP标记后添加以下行以禁用规范重定向。

remove_filter(\'template_redirect\',\'redirect_canonical\'); 保存并退出。

重新启动apache2和nginx并检查curl -I IP.

SO网友:seebiscuit

同样的问题。在我的情况下,我将服务器端口设置为3030, 以容纳其他服务器。无论如何,无需向任何functions.php 文件中,我通过在wp_options 域和端口设置的表。

例如

site     http://localhost:3030
home     http://localhost:3030
从那以后,一切似乎都很顺利。

结束

相关推荐

301 Redirect To Post ID

我有一个现有的基于asp的博客,其中所有帖子的URL中都包含帖子id(template_permalink.asp?id=123).</我有一个空白的WordPress博客。我将不得不手动重新创建所有帖子,因为我现有博客的提要不包含原始图像(它只有一个CDATA块),所以我无法导入它们</我需要将原来的帖子重定向到它们对应的WordPress帖子我尝试过:转到301重定向全部template_permalink.asp?id=xxx 使用htaccess将URL链接到帖子id,但它保留了原始i