阿里云ssl证书部署,ssl证书nginx配置

管理员

阿里云ssl证书申请的步骤就不详细介绍了
地址:阿里云

1.下载证书
选择nginx版本

2.配置ca证书

我的nginx的安装目录为: /usr/local/nginx/

cd /usr/local/nginx/

进入配置文件目录,增加cert/文件夹

cd conf
mkdir cert

把刚刚下载的两个文件上传到cert/文件夹中

开始配置

vi nginx.conf

把下面的代码粘贴进去:

server {
        listen  443 ssl;
        server_name xxx.cn;

        ssl_certificate       cert/5568612_xxx.cn.pem;
        ssl_certificate_key   cert/5568612_xxx.cn.key;

        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;
        location / {
            index  index.html index.htm index.php server.php;
            try_files $uri $uri/ /index.php?$query_string;
        }
        location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }
}

server {
       listen 80;
       server_name xxx.cn;
       return 301  https://$host$request_uri;#将http请求转为https
}
	

nuxt https相关配置

upstream nodenuxt {
   server 127.0.0.1:3000; #nuxt
   keepalive 64;
}
server {
   listen 80;
   server_name test.cn;
   return 301  https://$host$request_uri;#将http请求转为https
}
server {
   listen  443 ssl;
   server_name test.cn;

   ssl_certificate       cert/5568612_test.cn.pem;
   ssl_certificate_key   cert/5568612_test.cn.key;

   ssl_session_timeout 5m;
   ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
   ssl_protocols TLSv1.1 TLSv1.2;
   ssl_prefer_server_ciphers on;
   location / {
         proxy_http_version 1.1;
         proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection "upgrade";
         proxy_set_header Host $host;
         proxy_set_header X-Nginx-Proxy true;
         proxy_cache_bypass $http_upgrade;
         proxy_pass http://nodenuxt;#代理
   }
}

配置完成后,检查一下nginx配置文件是否可用,有successful表示可用。

nginx -t // 检查nginx配置文件

配置正确后,重新加载配置文件使配置生效:

killall nginx
/usr/local/nginx/sbin/nginx

至此,nginx的https访问就完成了,并且通过return 301重定向方式把所有http请求也转成了https请求,更加安全。

0人点赞
Linux
管理员

全部评论 0

推荐阅读 更多精彩内容

  • linux centos系统 nginx源码安装和配置
    1.1安装前工作 首先更新系统软件源,使用以下命令更新系统- yum update 依赖包安装; 1.2下载Nginx安装源文件,下载并上传到服务器;1.3新建nginx用户及用户组,使用 root 用户身份登录系统,执行以下命令创建新的用户; 1.4 编译配置、编译、安装。 nginx停止、重启未添加nginx服务前对nginx的管理只能通过一下方式管理...
    2021-01-13 11:10:22 管理员
  • linux centos系统 PHP8源码安装配置
    linux centos系统 PHP8源码安装配置。php8下载,解压压缩包,安装依赖,源码编译、安装,查看安装成功后的版本信息,修改配置,需要对`php.ini`配置进行配置修改,请自行参考官方文档配置,启用php-fpm服务,Nginx代理集成PHP8配置。重启php...
    2021-01-16 16:26:38 管理员
  • linux centos系统 MySQL8.0安装
    linux centos系统 MySQL8.0安装。下载mysql安装源文件,MySQL数据库设置,修改数据库密码,在CentOS中mysql的主要配置所在的目录。...
    2021-04-29 15:27:53 管理员
  • linux centos系统 安装php8遇到的问题
    安装php找不到 No package 'sqlite3' found,安装php找不到 No package 'oniguruma' found解决...
    2021-04-29 15:36:03 管理员