elixiat 发表于 2018-11-9 08:31:36

nginx 强制访问https一共有3种方式

  强制访问https一共有3种方式
  1、使用nginx的rewrite方法
  配置nginx.conf
  server {
  listen 80;
  server_namexxx.com;
  rewrite ^(.*)$   https://$host$1 permanent;
  }
  2、使用nginx的301状态码
  server {
  listen 80;
  listen 443;
  server_name xxx.com;
  ssl   on;
  ssl_certificate    /data/www-key/xxx.pem;
  ssl_certificate_key    /data/www-key/xxx.key;
  if ($scheme = http) {
  return 301 https://$server_name$request_uri;
  }
  }
  3、使用index.html 刷新网页 --这种不消耗机器性能
  在/data/www/xxx/新增index.html
123  80配置文件
  server {
  listen 80;
  server_name xxx.com;
  root /data/www/xxx/;
  charset utf-8;
  access_log /data/logs/nginx/access.log main;
  index Index.php index.php index.htm index.html;
  location / {
  try_files $uri $uri/ /index.php?$query_string;
  }
  error_page 404 https://xxx.cn/;
  location ~ .*\.(gif|jpg|jpeg|png|bmp|ico|swf|html|htm|mp3|wma|js|css)$ {
  expires 7d;
  }
  location ~ .*\.php?$ {
  include /data/apps/nginx/conf/fastcgi.conf;
  fastcgi_pass 127.0.0.1:9000;
  fastcgi_index index.php;
  }
  }
  443配置文件
  server {
  listen 443 ssl;
  server_name a.xxx.cn;
  root /data/www/a.xxx.cn/;
  ssl_certificate /data/www.key/a.xxx.cn.ssl.crt;
  ssl_certificate_key /data/www-key/a.xxx.cn.key;
  ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  ssl_ciphers HIGH:!aNULL:!MD5;
  charset utf-8;
  access_log /data/logs/nginx/access.log main;
  index Index.php index.php index.htm index.html;
  ########################******************************************
  location / {
  try_files $uri $uri/ /index.php?$query_string;
  }
  ########################*****************************************
  location ~ .*\.(gif|jpg|jpeg|png|bmp|ico|swf|html|htm|mp3|wma|js|css)$ {
  expires 7d;
  }
  location ~ .*\.php?$ {
  include /data/apps/nginx/conf/fastcgi.conf;
  fastcgi_pass 127.0.0.1:9000;
  fastcgi_index index.php;
  }
  }


页: [1]
查看完整版本: nginx 强制访问https一共有3种方式