" nginx错误!"在加载网页时

时间:2016-01-04 12:59:34

标签: nginx otrs

背景:我已经安装并正在维护一个使用nginx作为Web服务器的OTRS v4.0系统。系统一直在运行,直到我在nginx.conf中添加了ssl端口,从那时起,我试图连接到网页

  

http://localhost/otrs/index.pl

但没有响应并显示 nginx错误!找不到您正在寻找的页面。

我从nginx.conf文件中删除了ssl部分,但我仍然无法恢复以前的网页状态。

  • 在error.log文件中显示它无法找到index.pl文件 open()" /usr/share/nginx/html/otrs/index.pl"失败(2:没有这样的文件或目录) 每当我点击URL(http://localhost/otrs/index.pl)时都会记录此消息。
  • 在otrs.log文件中,它只会登录PID。

是否有任何出路而无需再次重新安装otrs?或者我错过了检查的任何其他日志文件



# For more information on configuration, see:
#   * Official English Documentation: http://nginx.org/en/docs/
#   * Official Russian Documentation: http://nginx.org/ru/docs/

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

events {
    worker_connections 1024;
    #debug_connection 10.0.2.15;
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;

    server {
        listen       80 default_server;
        #listen       80;
        server_name  server.unixmen.local;
        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }
}




提前致谢!

2 个答案:

答案 0 :(得分:1)

您混淆了默认服务器,nginx正在尝试提供错误的内容。

OTRS使用fastcgi,并在/etc/nginx/conf.d目录中拥有自己的配置文件。您发布的文件是默认的nginx配置,与OTRS没什么关系。

将您的listen指令更改为:

    #listen       80 default_server;
    listen       80;

这将阻止默认的nginx配置处理到https://localhost的未知主机连接,并假设它先前工作,那么系统应该再次工作。如果没有,那么从/etc/nginx/conf.d/something.conf发布OTRS配置,我们就能看到还有其他的事情发生了。

答案 1 :(得分:0)

感谢您的回复。我得到了解决方案! 也许,从我的结局来看,这是一个愚蠢的错误;)

首先,我忘记在问题中提到我还在同一台机器上运行了另一台Web服务器Apache。在初始阶段,两个服务器都配置在相同的端口 - > 80。所以,OTRS是在Apache而不是nginx上运行的(我也用它来实现另一个目的!)。稍后,为了避免混淆,我将Apache配置中的端口从80更改为8080,此时服务器停止为OTRS提供服务。 现在,当我使用http://localhost:8080/otrs/index.pl它正常工作时。

下次,我会在处理多个Web服务器时明智地更改服务器配置。