请原谅我,如果这是一个简单的问题,所有......我花了一个小时谷歌搜索这个并且无法得出一个有意义的答案。
我的设置: 运行在与清漆的nginx的Wordpress 清漆听80 Nginx听8080
我的问题: 在我的WP网站上,如果有人点击“mysite.com/somepage”中的“使用Facebook登录”按钮,经过漫长的等待,浏览器栏显示“mysite.com:8080/somepage/,我就是那么开心“哎呀! Google Chrome无法连接“错误。
从我读过的内容来看,我感觉问题出在我的nginx.conf上,但我对如何修复它没有任何想法;而且它在一个现场,所以围绕Jell-O钉在墙上并不是我喜欢的东西。而且我甚至不能100%肯定你要我从我的配置文件中向你展示什么,但这是我到目前为止所能想到的......
此配置由第三方完成,但这里有一些可能有帮助的基本信息......
启动/ etc / nginx / sites-enabled / wordpress
server {
listen 8080;
server_name mysite.com;
root /var/www/wordpress;
index index.php;
/ etc / default / varnish
的部分DAEMON_OPTS="-a XXX.XXX.XXX.XXX:80 \
-T localhost:6082 \
-f /etc/varnish/wordpress.vcl \
-S /etc/varnish/secret \
-s file,/var/lib/varnish/$INSTANCE/varnish_storage.bin,1G"
这也是来自/etc/varnish/default.vcl:
backend default {
.host = "127.0.0.1";
.port = "8080";
}
我害怕编辑这个并打破整个网站。什么跳出来?
更新:如果这有任何用处,我发现我点击Facebook登录按钮后我的浏览器正在尝试访问的URL(这导致被带回到我登录的页面,':8080 '被追加到'mysite.com'的末尾):
mysite.com/?code=AQBsvAQ3jFCJtYQO8AEhz-V8Yqr4HnhpZLaaqFjnvQenwp9FnvIBYGLdus2_vltS0LKicF2QiVKPewrfpRB2ODKF04PkHgJK-KynG3m0xxtztrdXUKPNgPVJ7YxQjnf1kcPagCm5dRjyAqeRw7Xr7exfrLP40yFLSR_eyrJvWUT9oF7ibpX_3883VWunJ3PX5keI7FYCvz2iWvdchWCGOFyBNAI_xtGLwPuMghij1xGRhp2P7dlGnm6GqVqeKO6oe3lhPDBuD0ogGV3TgbWfmC8omMf1d70YHhws3xtx7Lr2lvYPRsKAY5YU9v8x4qRAfvw#_=_
...现在想知道URL中的“code =”是否被重写规则抓住了?
另一个更新 找到this URL关于一个功能类似于我试图使用的Facebook登录插件的插件,我按照这个建议进行了以下编辑,至少停止了错误的重定向。现在我对另一个论坛有一个不同的问题(即该插件实际上没有记录用户)。
EDITED
$request_port = ((!empty ($_SERVER ['SERVER_PORT']) AND $_SERVER ['SERVER_PORT'] <> '80') ? (":" . $_SERVER ['SERVER_PORT']) : '');
到
$request_port = '';
答案 0 :(得分:0)
答案 1 :(得分:0)
Facebook知道登录后应该去哪里的两种方法是
我认为第二个是你的问题,当你创建facebook登录链接时,你传递一个URL告诉它它应该在它完成时返回的位置,如果从你的应用程序生成返回URL那么它可能是你我也会找到添加8080的功能。
检查该功能并确保它不包含8080
答案 2 :(得分:0)
尝试添加
port_in_redirect off;
在您的服务器块下
http://zach-adams.com/2014/05/fix-wordpress-8080-port-redirects/