nginx 80端口重定向到443端口,也就是http访问自动跳转到https
配置如下:
一、按照如下格式修改nginx.conf 配置文件,80端口会自动转给443端口,这样就强制使用SSL证书加密了。访问http的时候会自动跳转到https上面。
server {
listen 80;
server_name www.域名.com;
rewrite ^(.*)$ https://${server_name}$1 permanent;
}
server {
listen 443;
server_name www.域名.com;
root /home/wwwroot;
ssl on;
ssl_certificate /etc/nginx/certs/server.crt;
ssl_certificate_key /etc/nginx/certs/server.key;
....
}
备注: ${server_name}可以换成$host
二、重启nginx。
三、示例(以下是我们生产的配置)
server {
listen 80;
server_name www.test.com;
rewrite ^(.*)$ https://${server_name}$1 permanent;
}
server {
listen 443;
server_name www.test.com;
ssl on;
ssl_certificate /etc/pki/CA/certs/214321311540956.pem;
ssl_certificate_key /etc/pki/CA/certs/214321311540956.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
index index.php index.htm index.html;
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location ~ \.php {
root /alidata/www/html;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
set $path_info ;
set $fastcgi_script_name_new $fastcgi_script_name;
if ($fastcgi_script_name ~* ^(.+\.php)(/.+)$ ) {
set $fastcgi_script_name_new $1;
set $path_info $2;
}
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name_new;
fastcgi_param SCRIPT_NAME $fastcgi_script_name_new;
fastcgi_param PATH_INFO $path_info;
}
location / {
root /alidata/www/html;
index index.php index.html index.htm;
if (!-e $request_filename){
rewrite ^(.*)$ /index.php$1 last;
}
}
}
相关文章
2025年20个免费发布信息平台网址2025-02-07
2025年推荐20个免费发布信息网站,适合企业发布。2025-01-11
《合肥企业 “智” 胜之道 ——400 电话赋能无限可能》2025-01-09
《开启长春企业腾飞新引擎 ——400 电话业务》2025-01-09
合肥400电话办理,合肥400电话申请中心 2024-12-29
Scratch3.0安装包中文版Scratch3.0激活码魔抓安装程序少年编程少儿编程软件下载2024-12-29
合肥网站建设,让您的企业在网上有一个靓丽的名片2024-12-29
高价回收老域名,让您的闲置资产焕发新价值!2024-12-29
起名时如何避免名字的寓意出现歧义?2024-12-28
起名时如何确保名字的寓意与音韵美感相统一?2024-12-27