繁体   English   中英

Roundcube-Nginx不会自动重定向到.php文件

[英]Roundcube - Nginx does not redirect to .php file automatically

编辑!

我在Debian 7上使用Nginx,Postfix,Postfixadmin,Dovecot和Roundcube设置了邮件服务器。

我试图创建一个别名,以使用我的域example.org(当然,这里的域是一个示例)的SSL证书作为Webmail。 当访问以下URL https://example.org/support/webmail/时 -Nginx不会重定向到index.php文件,并且我收到以下消息403 Forbidden 仅当我在URL末尾手动添加.php文件时,它才起作用。

这是我的配置:

server {
    listen 80;
    server_name example.org;
    return 301 https://$server_name$request_uri;
}

server {
    listen 80;
    server_name www.example.org;
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl;
    ssl on;

    server_name example.org;
    root /var/www/soon;

    server_tokens off;

    ssl_certificate /etc/ssl/certs/example.org.certchain.crt;
    ssl_certificate_key /etc/ssl/private/example.org.key;

    ssl_session_cache shared:SSL:20m;
    ssl_session_timeout 10m;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256;
    ssl_prefer_server_ciphers on;

    # HSTS
    add_header Strict-Transport-Security max-age=15768000;

    location /support/webmail/ {
        alias /var/www/webmail/;
        autoindex off;

        location ~ \.php$ {
          include       /etc/nginx/fastcgi_params;
          # 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_param SCRIPT_FILENAME $request_filename;
        }
    }
}

谢谢。 :)

解决了。

这是适合我的配置:

server {
    listen 80;
    server_name example.org;
    return 301 https://$server_name$request_uri;
}

server {
    listen 80;
    server_name www.example.org;
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl;
    ssl on;

    server_name example.org;
    root /var/www/soon;

    server_tokens off;

    ssl_certificate /etc/ssl/certs/example.org.certchain.crt;
    ssl_certificate_key /etc/ssl/private/example.org.key;

    ssl_session_cache shared:SSL:20m;
    ssl_session_timeout 10m;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256;
    ssl_prefer_server_ciphers on;

    # HSTS
    add_header Strict-Transport-Security max-age=15768000;

    location /support/webmail/ {
        alias /var/www/webmail/;
        autoindex off;
        index index.php;

        location ~ \.php$ {
          fastcgi_split_path_info ^(.+\.php)(/.+)$;
          include       /etc/nginx/fastcgi_params;
          fastcgi_pass  unix:/var/run/php5-fpm.sock;
          fastcgi_index index.php;
          fastcgi_param SCRIPT_FILENAME $request_filename;
        }
    }
}

添加

location / {
    try_files $uri $uri/ index.php;
}

在配置中无法正常工作的部分,然后关闭autoindex

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM