资讯专栏INFORMATION COLUMN

一天一点linux(19):配置https

liujs / 1182人阅读

摘要:配置腾讯云证书文档备注,手动编译安装需要安加入模块示例开启端口填写绑定证书的域名的错误日志默认网站根目录将以下路由下放到前台入口文件注意这里有先后顺序证书配置开启证书文件私钥文件配置会话超时时间配置共享会话缓存大小和用来限制连接只包含

Nginx配置https
#腾讯云证书文档
https://cloud.tencent.com/document/product/400/4143

备注,手动编译安装需要安加入 SSL 模块(http_ssl_module)

示例
server {
    # 开启https端口
    listen 443 ssl;
    # 填写绑定证书的域名
    server_name xxx.com;

    # nginx的错误日志
    access_log /var/log/nginx/sd-access.log;
    error_log /var/log/nginx/sd-error.log;

    # 默认网站根目录
    root /data/releases/websites/sd/htdocs;

    # 将以下路由下放到前台
    location ~ (^/taskm)|(^/perm)|(^/data) {
        try_files $uri /index.html;
    }

    location / {
        # 入口文件,注意这里有先后顺序
        index index.html index.php index.htm;
        if (!-e $request_filename) {
            rewrite . /index.php last;
        }
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }

    # https证书配置
    # 开启ssl
    ssl on;
    # 证书文件
    ssl_certificate /usr/local/nginx/conf/ssl/xxxx.crt;
    # 私钥文件
    ssl_certificate_key /usr/local/nginx/conf/ssl/xxxx.key;
    # 配置会话超时时间
    ssl_session_timeout 5m;
    # 配置共享会话缓存大小
    ssl_session_cache shared:SSL:10m;
    # ssl_protocols 和 ssl_ciphers 用来限制连接只包含 SSL/TLS 的加強版本和算法
    # 配置协议
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    # 配置加密套件
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    # 优先采取服务器算法
    ssl_prefer_server_ciphers on;

    # Fastcgi服务器和程序(PHP,Python)沟通的协议.
    location ~ .php$ {
        # 设置监听端口
        fastcgi_pass   127.0.0.1:9000;
        # 设置nginx的默认首页文件,上面index设置过
        fastcgi_index  index.php;
        # 设置脚本文件请求的路径
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        # 引入fastcgi的配置文件
        include fastcgi_params;
        fastcgi_param SERVER_NAME $http_host;
        fastcgi_ignore_client_abort on;
        fastcgi_connect_timeout 600s;
        fastcgi_send_timeout 600s;
        fastcgi_read_timeout 600s;
    }

    # 对图片缓存时间设置
    location ~ .*.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
        expires 30d;
        access_log off;
    }

    # 对JS和CSS缓存时间设置
    location ~ .*.(js|css)?$ {
        expires 7d;
        access_log off;
    }
}

# 使用全站加密,HTTP 自动跳转 HTTPS, 注意配置这里上面就不能再监听80端口
server {
    # 80端口访问
    listen 80;
    # 配置访问域名 不包含协议
    server_name xxx.com;
    # 使用url重写模块重写url 访问非https的url重定向到http上去
    rewrite ^/(.*) https://$host/$1 permanent;
}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/40585.html

相关文章

  • linux(4)

    摘要:查找命令文件目录按名字查找按照修改时间查找根下类型文件名字以为名称一个删除命令管道把前一个命令的输出交给后一个命令继续处理,后不需要加空格修改时间天前,最近天改过的文件画图学习打印序列竖横数字之间的分隔符步长 find 查找命令 -type (f 文件 d 目录) -name ddd 按名字查找 -mtime(按照修改时间查找) find /(根下) -type(类型) f(文件) ...

    Caicloud 评论0 收藏0
  • linux(4)

    摘要:查找命令文件目录按名字查找按照修改时间查找根下类型文件名字以为名称一个删除命令管道把前一个命令的输出交给后一个命令继续处理,后不需要加空格修改时间天前,最近天改过的文件画图学习打印序列竖横数字之间的分隔符步长 find 查找命令 -type (f 文件 d 目录) -name ddd 按名字查找 -mtime(按照修改时间查找) find /(根下) -type(类型) f(文件) ...

    oneasp 评论0 收藏0
  • linux(7):Ubuntn下如何将Apache配置成多个域名?

    摘要:记录下如何在上配置多域名站点我这里安装的的配置文件位置是可以看到以下文件夹备注里面是的一个软链接,所以文件夹才是真正的配置文件。要新建一个新的站点,进入复制一份默认的配置文件,比如改名为。 之前一直在linux上建了一个站点,但是当想着跑另外一个测试项目的时候,我不得不改文件名来保证地址统一,这样太麻烦了,而Apache自身就有多站点域名的功能,一直没在linux上用。记录下如何在Li...

    leiyi 评论0 收藏0
  • linux(7):Ubuntn下如何将Apache配置成多个域名?

    摘要:记录下如何在上配置多域名站点我这里安装的的配置文件位置是可以看到以下文件夹备注里面是的一个软链接,所以文件夹才是真正的配置文件。要新建一个新的站点,进入复制一份默认的配置文件,比如改名为。 之前一直在linux上建了一个站点,但是当想着跑另外一个测试项目的时候,我不得不改文件名来保证地址统一,这样太麻烦了,而Apache自身就有多站点域名的功能,一直没在linux上用。记录下如何在Li...

    Drinkey 评论0 收藏0
  • linux(16):Linux系统出现中文乱码,如何解决?

    摘要:方法一此方法执行后,仅在当前窗口生效方法二写到配置文件永久生效再执行立即生效方法三全局系统环境变量配置文件执行立即生效 方法一: export LANG=zh_CN.GB18030 //此方法执行后,仅在当前窗口生效 方法二: echo LANG=zh_CN.GB18030>/etc/sysconfig/il8n //写到配置文件永久生效 再执行:source /etc/sysco...

    greatwhole 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<