Во-первых, заранее спасибо за чтение / помощь. У меня есть сервер 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;
}
}