版本Nginx1.10.x其它版本没试过
前提:拿到证书的情况下,域名解析正常,解析了域名及二级域名。
123.com.crt,123.com.key证书放在/etc/ssl目录下
Nginx的xx/xxx/nginx.conf 在http{}里加入下面server模块就可以https访问静态页面了,如要动态的继续往第一个server里添加
http {
#http节点中可以添加多个server节点
server{
#监听443端口
listen 443;
#对应的域名改成你们自己的域名就可以了
server_name www.123.com;
ssl on;
#从腾讯云获取到的第一个文件的全路径
ssl_certificate /etc/ssl/123.com.crt;
#从腾讯云获取到的第二个文件的全路径
ssl_certificate_key /etc/ssl/123.com.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
#这是我的主页访问地址,因为使用的是静态的html网页,所以直接使用location就可以完成了。
location / {
#文件夹
root /usr/share/nginx/html;
#主页文件
index index.html;
}
}
server{
listen 80;
server_name www.123.com;
rewrite ^/(.*)$ https://www.123.com:443/$1 permanent;
}
}
二级域名配置:
在Nginx的/xxxx/nginx/conf.d目录下建立个二级域名的文件配置 例如:a.123.conf
每个二级域名都可以增加个文件配置:xxx.123.conf
加入以下代码:
server{
#监听443端口
listen 443;
#对应的域名改成你们自己的域名就可以了
server_name a.123.com;
ssl on;
#从腾讯云获取到的第一个文件的全路径
ssl_certificate /etc/ssl/123.com.crt;
#从腾讯云获取到的第二个文件的全路径
ssl_certificate_key /etc/ssl/123.com.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
#这是我的主页访问地址,因为使用的是静态的html网页,所以直接使用location就可以完成了。
location / {
#文件夹
root /usr/share/nginx/html;
#主页文件
index index.html index.php;
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.(jpg|png|jpeg|gif)$ {
expires 30d;
root /usr/share/nginx/html;
}
location ~ \.(js|css)$ {
expires 2h;
root /usr/share/nginx/html;
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
error_log /home/wwwlogs/admin_error.log;
}
server{
listen 80;
server_name a.123.com;
rewrite ^/(.*)$ https://a.123.com:443/$1 permanent;
}
然后nginx -t检测
重启Nginx服务