Назад | Перейти на главную страницу

Файл не найден - Nginx / FPM - Squirrelmail

Во-первых, заранее спасибо за чтение / помощь. У меня есть сервер Nginx, который я пытаюсь получить, чтобы получить squirrelmail из / usr / share / squirrelmail.

Папка squirrelmail находится в / usr / share / squirrelmail, а владельцем и группой этой папки являются www-data. Я установил местоположение и псевдоним для точки / тестирования (в https://brailsford.xyz/test/) в папке squirrelmail. Однако страница отображается как не найденная. Любые идеи?

Ниже мой конфиг nginx для сайта.

server {
            listen 443;
            server_name brailsford.xyz;

        ssl on;
        ssl_certificate          /etc/ssl/certs/cert_chain.crt;
        ssl_certificate_key      /etc/ssl/private/brailsford.key;

        ssl_session_timeout 5m;

        ssl_protocols SSLv3 TLSv1;
        ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
        ssl_prefer_server_ciphers on;

        root /data/brailsford.xyz/www;
        index index.php index.html index.htm;

        location ~ \.php$ {
                include fastcgi_params;
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index  index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                fastcgi_buffers 256 128k;
                fastcgi_connect_timeout 300s;
                fastcgi_send_timeout 300s;
                fastcgi_read_timeout 300s;
        }

        error_page 404 /404.html;
        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
            root /data/brailsford.xyz/www;
        }

        error_log /data/brailsford.xyz/logs/error.log error;
        access_log /data/brailsford.xyz/logs/access.log;

        location / {
                index index.php;
        }

        location /test {
                alias /usr/share/squirrelmail/;
                index index.php;
        }

}

Для всех, кто смотрел на это, проблема заключалась в том, что пути нужно было объявить дважды: в местоположении, а затем в качестве внутреннего местоположения для PHP. Это плохое объяснение, вот код:

location /webmail {
                alias /var/lib/roundcube;
                try_files $uri $uri/ /index.php;
                index index.php;
                location ~ ^/webmail(.+\.php)$ {
                        include fastcgi_params;
                        alias /var/lib/roundcube/$1;
                        fastcgi_pass unix:/var/run/php5-fpm.sock;
                        fastcgi_index  index.php;
                        fastcgi_param SCRIPT_FILENAME /var/lib/roundcube$1;
                        fastcgi_buffers 256 128k;
                        fastcgi_connect_timeout 300s;
                        fastcgi_send_timeout 300s;
                        fastcgi_read_timeout 300s;
                        fastcgi_intercept_errors        on;
                }
        }