2012-08-24 2 views
6

debian wheezy에서 실행중인 nginx 서버가 있습니다. 나는 일하고있다 OTRS 설치.fcgiwrap을 사용하는 nginx 서버의 CGI 응답 오류

http://www.haschmi.de/de/otrs/otrs-on-nginx.html 그래서 내가 이전 래퍼를 제거하고 새로운 하나를 설치 : 우리가 fcgiwrap 패키지를 선택 desided 있도록 그러나 우리의 오래된 펄있는 fcgi 래퍼는 다른 중요한 과정으로 interferring했다. 오래된 래퍼 나는 우리 OTRS 모든 작품에 방문하실 때

fastcgi_pass 127.0.0.1:8999; 

하고 여기에

fastcgi_pass unix:/var/run/fcgiwrap.socket; 

새가 전체 설정

server { 
    listen ip:80; 

    server_name support.test.com; 

    root /opt/otrs/var/httpd/htdocs; 

    index index.html; 
    location /otrs-web { 
     gzip on; 
     alias /opt/otrs/var/httpd/htdocs; 
    } 

    location ~ ^/otrs/(.*\.pl)(/.*)?$ { 
    #try_files $uri =404; 
    gzip off; 
    fastcgi_pass unix:/var/run/fcgiwrap.socket; 
    fastcgi_index index.pl; 
    fastcgi_param SCRIPT_FILENAME /opt/otrs/bin/fcgi-bin/$1; 


    fastcgi_param QUERY_STRING $query_string; 
    fastcgi_param REQUEST_METHOD $request_method; 
    fastcgi_param CONTENT_TYPE $content_type; 
    fastcgi_param CONTENT_LENGTH $content_length; 
    fastcgi_param GATEWAY_INTERFACE CGI/1.1; 
    fastcgi_param SERVER_SOFTWARE nginx; 
    fastcgi_param SCRIPT_NAME $fastcgi_script_name; 
    fastcgi_param REQUEST_URI $request_uri; 
    fastcgi_param DOCUMENT_URI $document_uri; 
    fastcgi_param DOCUMENT_ROOT $document_root; 
    fastcgi_param SERVER_PROTOCOL $server_protocol; 
    fastcgi_param REMOTE_ADDR $remote_addr; 
    fastcgi_param REMOTE_PORT $remote_port; 
    fastcgi_param SERVER_ADDR $server_addr; 
    fastcgi_param SERVER_PORT $server_port; 
    fastcgi_param SERVER_NAME $server_name; 
    } 
} 

입니다했다. 하지만 아들로서 로그인 양식을 제출하면 얻을 수 있습니다.

An error occurred while reading CGI reply (no response received) 

어떤 아이디어가 잘못 되었나요? 이 문제를 어떻게 해결할 수 있습니까?

+1

당신이 오류를 확인 했 당신의 nginx 오류 로그? 새로운 fcgi 래퍼는 이전 패키지와 동일한 사용자 또는 다른 패키지로 실행됩니다. 사용자가 다른 경우 사용 권한 문제 일 수 있습니다. –

+0

예, 동일한 사용자입니다. 우리는 otrs에 반대했고, 주문의 표 시스템을 원했다. –

답변

7

현재 우분투 담당자 (12.04)는 적절한 fcgiwrap 버전을 포함하지 않습니다.

https://github.com/gnosek/fcgiwrap에서 직접 fcgiwrap을 컴파일하고 -f 옵션을 사용하여 래퍼를 실행해야합니다. err_log가 서버 error.log로 재 지정됩니다. 는 /etc/init.d/fcgiwrap을 시작 옵션 편집을 fcgiwrap 변경 및 주석/다음 줄을 수정하려면 다음

DAEMON_OPTS="-f" 

다시 시작 fcgiwrap이 후 :

service fcgiwrap restart 
+0

이전 버전도 제거해야했습니다. ls -l $ (찾기 fcgiwrap | grep bin) -rwxr-xr-x 1 루트 루트 135483 8 월 8 20:43/usr/local/sbin/fcgiwrap -rwxr-xr-x 1 루트 루트 19064 2011 년 5 월 1 일/usr/sbin/fcgiwrap mv/usr/sbin/fcgiwrap /usr/sbin/fcgiwrap.20110501 cp/usr/local/sbin/fcgiwrap/usr/sbin/fcgiwrap –