`
A牛哥哥
  • 浏览: 150268 次
社区版块
存档分类
最新评论

nginx 配置 http 跳转到https

阅读更多
之前配置的是http 和 https 都可以访问,配置如下:

server {
     listen 443 ssl;
     listen 80; 
     server_name test.com;
 
     #设置长连接
     keepalive_timeout 70;
 
     #减少点击劫持
     add_header X-Frame-Options DENY;
     #禁止服务器自动解析资源类型
     add_header X-Content-Type-Options nosniff;
     #防XSS攻击
     add_header X-Xss-Protection 1;
 
     location / {
         proxy_pass http://127.0.0.1:8081;
     }
     location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
         expires      30d;
         proxy_pass http://127.0.0.1:8081;
     }
     location ~ .*\.(js|css)?$ {
         expires      30d;
         proxy_pass http://127.0.0.1:8081;
     }
  }



后来要配置成访问http时自动跳转到https,改成如下配置:
server {
     listen 443 ssl;
     # listen 80; [b]这个要注释掉,再底下单独写个server[/b]
     server_name test.com;
 
     #设置长连接
     keepalive_timeout 70;
 
     #减少点击劫持
     add_header X-Frame-Options DENY;
     #禁止服务器自动解析资源类型
     add_header X-Content-Type-Options nosniff;
     #防XSS攻击
     add_header X-Xss-Protection 1;
 
     location / {
         proxy_pass http://127.0.0.1:8081;
     }
     location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
         expires      30d;
         proxy_pass http://127.0.0.1:8081;
     }
     location ~ .*\.(js|css)?$ {
         expires      30d;
         proxy_pass http://127.0.0.1:8081;
     }
  }


  server {
      listen      80;
      server_name test.com;
      rewrite ^(.*) https://$server_name$1 permanent;
  }



一定要把80端口独立写出来进行rewrite到https, 如果不独立出来,访问时nginx会报错,说重定向死循环了, 因为访问80端口rewrite到443,而访问443时又rewrite到443,再又rewrite到443..... 如此便死循环了,分开写就是只对80端口进行rewrite,443不能rewrite到443
分享到:
评论

相关推荐

    阿里云ssl证书配置https和slb的http跳转到https-详细笔记总结

    阿里云 SSL 证书配置 HTTPS 和 SLB 的 HTTP 跳转到 HTTPS ...阿里云 SSL 证书配置 HTTPS 和 SLB 的 HTTP 跳转到 HTTPS 需要考虑多种因素,包括 SSL 证书配置、SLB 的后端协议、Nginx 配置、HTTPS 跳转等。

    详解NGINX访问https跳转到http的解决方法

    总结起来,当遇到NGINX从HTTPS跳转到HTTP的问题时,我们可以通过在NGINX配置中使用`proxy_set_header`添加自定义头部,或者使用`proxy_redirect`指令来修正Location头,确保用户始终在安全的HTTPS连接中。...

    nginx 域名跳转nginx多域名向主域名跳转

    - **SSL/TLS 配置**:在 HTTPS 环境下,除了配置 HTTP 跳转外,还需要确保 SSL/TLS 的正确配置,以便在跳转过程中保持连接的安全性。 - **性能优化**:对于高流量站点,应考虑使用缓存机制减少服务器负担。例如,...

    nginx强制使用https访问的方法(http跳转到https)

    在Nginx配置中,将这个HTML文件作为404页面处理,这样任何未找到的HTTP请求都会重定向到HTTPS首页: ```nginx server { listen 80; server_name test.com; location / { root /srv/www/httptestcom/; } ...

    nginx页面跳转新方式

    为了实现页面跳转功能,首先需要在Nginx配置文件中添加代理转发配置。这一步骤主要是为了实现后端服务器的负载均衡。 ```nginx upstream my.net { ip_hash; server 192.168.3.32:8080; # 服务器A server 192.168...

    详解nginx同一端口监听多个域名和同时监听http与https

    这样配置后,Nginx可以处理HTTP请求,并对HTTPS请求进行加密处理。特别的,如果内网DNS直接将A记录指向了服务器,而服务器需要处理内网的HTTPS请求和外部DMZ区的HTTP请求,那么服务器就需要同时监听HTTP和HTTPS端口...

    Nginx同时支持Http和Https的配置详解

    本篇将详细介绍如何配置Nginx,使其同时支持HTTP和HTTPS服务。 首先,需要了解的是,在使用HTTPS协议时,服务器通过SSL/TLS协议对数据进行加密,确保数据传输的安全性。对于大多数现代网站而言,支持HTTPS是标配...

    nginx正向代理https和非80端口配置文档.pdf

    nginx代理功能十分强大,经常用来做反向代理,但有...附件包含了全部安装过程,包括nginx.conf lua的配置,适合新手小白按步骤操作。 注意(附件中nua的版本我测试过nginx1.10.3可正常安装,nginx1.12.2报错不兼容。)

    Nginx配置如何区分PC或手机访问不同域名

    例如,若想在移动端访问时重定向到另一个域名(如***),可以利用Nginx配置文件中的`if`语句,结合正则表达式匹配HTTP_USER_AGENT,检测是否为移动设备访问(如使用Android、iPhone、WindowsPhone、UC、Kindle等标识...

    nginx转发sftp、ftp的配置

    - **安全性考量**:考虑到安全性问题,建议仅在受信任的网络环境中使用此配置,同时加强对Nginx配置的安全性审查和日志监控。 - **性能优化**:根据实际情况调整 `proxy_connect_timeout` 和 `proxy_timeout` 参数,...

    nginx负载均衡ssl证书认证强制跳转https+keeplived+apache

    3. **强制HTTP到HTTPS的重定向**:为了确保所有访问都是通过HTTPS进行的,Nginx配置中使用了`rewrite`指令,如`rewrite ^(.*)$ https://$host$1 permanent;`,这会将所有尝试通过HTTP访问的请求重定向到对应的HTTPS ...

    使用Nginx实现301跳转至https的根域名示例代码

    在上述提供的内容中,展示了如何使用Nginx配置文件来实现从HTTP协议到HTTPS协议的301永久重定向。具体的做法是设置两个server块,一个用于监听80端口(HTTP),另一个用于监听443端口(HTTPS)。对于监听80端口的...

    nginx 与 jboss 配置http自动跳转https

    NULL 博文链接:https://zliguo.iteye.com/blog/2344573

    nginx反向代理导致session失效的问题解决

    两边通过同一个nginx进行反向代理,nginx配置大致如下, location /health/ { proxy_pass http://192.168.40.159:8081/health/; #无问题的配置 } location /health-dev/ { proxy_pass ...

    nginx配置https之后,https请求被调转到http问题

    修改之前,nginx的配置如下: upstream local_tomcat_wechat{  server 127.0.0.1:80 weight=2 fail_timeout=1s; }   server {  listen 443;  server_name www.xxxx.com;  error_log /nginx/log/...

    Nginx端口映射配置方法

    传统的Web服务器如Nginx或Apache会直接处理HTTP请求,并根据配置解析到相应的静态文件或动态脚本。然而,随着技术的进步,许多编程语言如Node.js、PHP等可以自建Web服务,这些服务通常在特定的非标准端口(如8000、...

    nginx配置代理oracle和网站

    使用nginx代理oracle或者网站,实现地址的跳转以及网站的统一门户和负载均衡。

    前端门户nuxt部署文件和nginx代理配置.zip.zip

    前端门户nuxt部署文件和nginx代理配置,仅供学习所用,不可以他用,谢谢

    Nginx配置同一个域名同时支持http与https两种方式访问实现

    在Nginx配置文件中,首先需要设置监听80端口的`server`块,这是HTTP协议的标准端口。例如: ```nginx server { listen 80; server_name your-domain.com; } ``` 2. **配置HTTPS监听**: 接下来,为HTTPS...

Global site tag (gtag.js) - Google Analytics