【问题标题】:redmine installation not working through nginx and thinredmine 安装无法通过 nginx 和瘦
【发布时间】:2013-07-19 08:03:24
【问题描述】:

我在 Ubuntu 13.04 服务器上安装了 Redmine。 此安装运行良好,我确认 Redmine 正在通过 WEBrick 服务器工作(根据 redmine 文档)。

为了让事情更稳定,我想在 Nginx 和 Thin 后面运行 Redmine。

在这部分我遇到了问题,因为 Nginx 报告超时:

2013/07/19 07:47:32 [error] 1051#0: *10 upstream timed out (110: Connection timed out) while connecting to upstream, .......

精简配置:

---
chdir: /home/redmine/app/redmine
environment: production
address: 127.0.0.1
port: 3000
timeout: 5
log: log/thin.log
pid: tmp/pids/thin.pid
max_conns: 128
max_persistent_conns: 64
require: []
wait: 10
servers: 1
daemonize: true

我可以看到 Thin 正在运行,创建了 pid 文件并启动了一个日志文件。 执行请求时,我看不到日志文件的进一步添加。

Nginx 配置:

upstream redmine {
        server 127.0.0.1:3000;
}

server {
        server_name redmine.my.domain;
        listen 443;

        ssl on;
        ssl_certificate /home/redmine/sites/redmine/certificates/server.crt;
        ssl_certificate_key /home/redmine/sites/redmine/certificates/server.key;

        access_log /home/redmine/sites/redmine/logs/server.access.nginx.log;
        error_log /home/redmine/sites/redmine/logs/server.error.nginx.log;

        root /home/redmine/app/redmine;

        location / {
                try_files $uri @ruby;
        }

        location @ruby {
                proxy_set_header  X-Real-IP  $remote_addr;
                proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header  Host $http_host;
                proxy_redirect off;
                proxy_read_timeout 5;
                proxy_pass http://redmine;
        }
}

我可以看到 Nginx 日志的补充内容。

谁能告诉我在哪里可以找到问题所在?

iptables -L的当前结果

Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:3000
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:https
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ssh
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  

【问题讨论】:

  • 错误日志说明了什么?
  • Nginx 错误日志行位于帖子顶部。
  • thin.3000.log 和 production.log 在 redmine dir 日志启动消息中。然后什么都没有添加。
  • 我明白了。尝试 telnet 端口
  • "telnet 127.0.0.1 3000" 继续尝试(可能是超时)。

标签: nginx redmine thin


【解决方案1】:

错误是因为您的防火墙“iptables”阻止了该端口。

回滚您的 iptables 配置,然后发出以下命令:

iptables -I INPUT -i lo -p tcp --dport 3123 -j ACCEPT

记得通过以下方式保存设置:

service iptables save

更多关于 iptables 的信息:https://help.ubuntu.com/community/IptablesHowTo

附言以上命令可能需要sudo

【讨论】:

  • 没有帮助。仍然无法远程登录。另外,这不会为整个世界开放端口吗?而不仅仅是本地?我已将iptables -L 的结果添加到原始问题中。
  • 添加 lo 仅作为 localhost 流量的约束
  • 在一些不相关的问题之后修复了问题。 Tnx 寻求帮助!
猜你喜欢
  • 2019-03-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-01-30
  • 1970-01-01
  • 2013-11-05
  • 1970-01-01
相关资源
最近更新 更多