2012-08-24 36 views
6

Tengo un servidor nginx ejecutándose en debian wheezy. Tengo trabajando OTRS instalación. Pero nuestro viejo envoltorio perl- fcgi se Interferring con algún otro proceso importante por lo que no se equivocaban para elegir paquete fcgiwrap: http://www.haschmi.de/de/otrs/otrs-on-nginx.htmlError de respuesta CGI en el servidor nginx usando fcgiwrap

Así que retira el viejo envoltorio e instalado el nuevo. El viejo envoltorio tenía

fastcgi_pass 127.0.0.1:8999; 

y el nuevo

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

Aquí está la configuración completa

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; 
    } 
} 

Cuando visito nuestra OTRS todo funciona. Pero a medida que envíe el formulario de inicio de sesión obtengo

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

¿Alguna idea de qué es lo que está mal? ¿Como puedo resolver esto?

+1

¿verificó si había errores en su ¿registro de error de nginx? La nueva envoltura fcgi se está ejecutando con el mismo usuario que el anterior, o con uno diferente? Si el usuario es diferente, puede tratarse de un problema de permisos. –

+0

Sí, el mismo error, el mismo usuario. Deseamos contra otros y para un sistema de boleto personalizado ahora. –

Respuesta

7

Las repeticiones de Ubuntu actuales (12.04) no incluyen una versión de fcgiwrap adecuada.

Necesita compilar fcgiwrap directamente desde https://github.com/gnosek/fcgiwrap y usar la opción -f para ejecutar el contenedor. Hará que el err_log sea redirigido al servidor error.log. Para cambiar las opciones de inicio de edición fcgiwrap /etc/init.d/fcgiwrap y elimine el comentario/modificar la siguiente línea:

DAEMON_OPTS="-f" 

Reiniciar fcgiwrap después de esto:

service fcgiwrap restart 
+0

Tuve que quitar la versión anterior también. ls -l $ (busque fcgiwrap | grep bin) -rwxr-xr-x 1 root raíz 135483 8 ago 20:43/usr/local/sbin/fcgiwrap -rwxr-xr-x 1 root root 19064 1 de mayo de 2011/usr/sbin/fcgiwrap mv/usr/sbin/fcgiwrap /usr/sbin/fcgiwrap.20110501 cp/usr/local/sbin/fcgiwrap/usr/sbin/fcgiwrap –

Cuestiones relacionadas