每一个问题都是机会

PHP 之 Nginx 配置,HTTP and HTTPS

文章目录
  1. HTTP配置:
  2. HTTPS配置:

HTTP配置:

server {

    #
    listen 80;
    # 
    server_name www.xx.com;

    # 默认网站根目录(www目录)
    root /home/www;

    # 伪静态设置
    if (-f $request_filename/index.html){
        rewrite (.*) $1/index.html break;
    }
    if (-f $request_filename/index.php){
        rewrite (.*) $1/index.php;
    }
    if (!-f $request_filename){
        rewrite (.*) /index.php;
    }

    location / {
        # 定义首页索引文件的名称
        index index.php index.html index.htm;
    }

    # PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI协议默认配置.
    # Fastcgi服务器和程序(PHP,Python)沟通的协议.
    location ~ \.php$ {
        # 设置监听端口
        fastcgi_pass 127.0.0.1:9000;
        # 设置nginx的默认首页文件(上面已经设置过了,可以删除)
        fastcgi_index index.php;
        # 设置脚本文件请求的路径
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        # 引入fastcgi的配置文件
        include fastcgi_params;
    }
}

HTTPS配置:

server {

    # SSL 访问端口号为 443
    # 如果您使用Nginx 1.15.0及以上版本,请使用listen 443 ssl代替listen 443和ssl on。建议开启http2替换为listen 443 ssl http2;
    listen 443 ssl;
    # 填写绑定证书的域名
    server_name www.xx.com;
    # 证书文件名称 或 /usr/local/ssl/www.xx.com/xx.pem;
    ssl_certificate /usr/local/ssl/www.xx.com/xx.crt;
    # 私钥文件名称
    ssl_certificate_key /usr/local/ssl/www.xx.com/xx.key;
    #ssl_session_timeout 5m;
    # 请按照这个协议配置
    #ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
    # 请按照这个套件配置,配置加密套件,写法遵循 openssl 标准。
    #ssl_ciphers HIGH:!aNULL:!MD5; 
    #ssl_prefer_server_ciphers on;

    # 默认网站根目录(www目录)
    root /home/www;

    # 伪静态设置
    if (-f $request_filename/index.html){
        rewrite (.*) $1/index.html break;
    }
    if (-f $request_filename/index.php){
        rewrite (.*) $1/index.php;
    }
    if (!-f $request_filename){
        rewrite (.*) /index.php;
    }

    location / {
        # 定义首页索引文件的名称
        index index.php index.html index.htm;
    }

    # PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI协议默认配置.
    # Fastcgi服务器和程序(PHP,Python)沟通的协议.
    location ~ \.php$ {
        # 设置监听端口
        fastcgi_pass 127.0.0.1:9000;
        # 设置nginx的默认首页文件(上面已经设置过了,可以删除)
        fastcgi_index index.php;
        # 设置脚本文件请求的路径
        fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        # 引入fastcgi的配置文件
        include fastcgi_params;
    }
}

server {
    listen 80;
    server_name www.xx.com;
    # http重定向到https
    rewrite ^(.*)$ https://$host$1 permanent;
}
赞(5)
未经允许不得转载:技术好学屋 » PHP 之 Nginx 配置,HTTP and HTTPS
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址