首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么我的no-www和https的htaccess不能工作?

为什么我的no-www和https的htaccess不能工作?
EN

Stack Overflow用户
提问于 2019-01-24 01:52:45
回答 1查看 117关注 0票数 1

我的.htaccess文件有问题。我想将no-www重定向到www,将HTTP重定向到HTTPS。

我试过这些文件,但它们不起作用。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RewriteEngine On  
RewriteCond %{HTTP_HOST} ^www.example.com$
RewriteRule ^(.*) http://www.example.com/$1 [QSA,L,R=301]

RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [QSA,R=301,L]

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301] 

RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]

你能帮帮我吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-25 23:47:55

最初的问题是服务器配置中没有启用.htaccess文件。在服务器配置中设置AllowOverride All以启用.htaccess文件后,这将导致重定向循环...

您将得到一个重定向循环,因为当请求HTTPS时,HTTPS服务器变量报告为"off“。这意味着您有一个处理X-Forwarded-Proto连接的前端代理,这可以通过以下事实得到确认:https HTTP请求报头(您的应用服务器看到的)被设置为"https“。( X-Forwarded-Proto标头由代理服务器在请求通过时设置。)

这意味着这个代理和您的应用服务器之间的“私有”连接是通过纯HTTP进行的。但是代理和客户端之间的连接是由HTTPS保护的。然而,这不一定是问题,这意味着您需要调整指令来检查X-Forwarded-Proto HTTP请求报头,而不是HTTPS服务器变量。

例如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RewriteEngine On

RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L] 

RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]

确保在测试之前清除浏览器缓存。通常情况下,最好使用302 (临时)重定向,只有在您确定它工作正常时才更改为301 (永久)-以避免缓存问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54338311

复制
相关文章
如何使用 .htaccess 强制访问 HTTPS
如果你为你的域名安装 SSL 证书,你的下一步应该是配置应用将所有的网络流量通过 HTTPS 传输。
雪梦科技
2020/07/08
3.9K0
.htaccess 强制 HTTP 全部跳转到 HTTPS
全站采用https协议访问,所以需要http重定向到https,只需要在.htaccess加入下面规则
星哥玩云
2022/07/16
7870
.htaccess 全站资源重定向至 https
适用于已经部署完 https 证书的,类似阿里云虚机,只有首页重定向,而其他 html,js,css,image 等资源用 http 也能打开的情况。
Savalone
2020/02/11
7390
[TCP/IP] HTTPS的工作原理
一.首先HTTP请求服务端生成证书,客户端对证书的有效期、合法性、域名是否与请求的域名一致、证书的公钥(RSA加密)等进行校验; 二.客户端如果校验通过后,就根据证书的公钥的有效, 生成随机数,随机数使用公钥进行加密(RSA加密); 三.消息体产生的后,对它的摘要进行MD5(或者SHA1)算法加密,此时就得到了RSA签名; 四.发送给服务端,此时只有服务端(RSA私钥)能解密。 五.解密得到的随机数,再用AES加密,作为密钥(此时的密钥只有客户端和服务端知道)。 六.秘钥的协商过程是非对称加密,之后的通讯过程是使用此秘钥的对称加密, 非对称加密算法的性能是非常低的,一般的HTTPS连接只在第一次握手时使用非对称加密,通过握手交换对称加密密钥,在之后的通信走对称加密
唯一Chat
2019/09/10
5870
[TCP/IP] HTTPS的工作原理
配置SSL证书后,Nginx的HTTPS 不能正常工作的原因有哪些
申请ssl证书,配置nginx支持https与证书,可是访问https的nginx总是出现错误,也导致小程序发https请求失败,这是什么原因呢?
网盾JoySSL小张
2023/08/31
4.9K0
Apache .htaccess如何设置自动跳转到HTTPS
如果.htaccess 伪静态规则不生效,需要编辑站点配置文件或者httpd.conf修改如下配置
用户1094633
2022/02/15
1K0
HTTPS是如何工作的
大家在浏览网页的时候一定有这样的体验,有一些网站在网址那里会显示一个绿色的挂锁,并且网址中“https”相关的字样也是绿色的,聪明的朋友肯定会问,这些颜色和符号代表什么意思呢?想想大家在上网的时候,经常要输入账号和密码,有时候网购还要输入信用卡信息,如果这些信息被偷了,后果是很严重的。是的,这个绿色的锁就是用来保护大家的信息不被黑客窃取。现在很多网站默认使用HTTPS来保护用户的信息,截止2018年4月,Alexa前100万的网站中,32.2%使用HTTPS作为默认设置,互联网最受欢迎的137971个网站中,57.1%使用了HTTPS;Firefox遥测数据显示,70%的网站使用了HTTPS。
大蟒传奇
2018/07/31
2.4K0
HTTPS是如何工作的
HTTP和HTTPS详解工作原理
HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。
格姗知识圈
2019/07/19
2.6K0
HTTP和HTTPS详解工作原理
http和https的优缺点,区别与工作原理
超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。
全栈程序员站长
2022/07/08
2510
http和https的优缺点,区别与工作原理
为什么我退出了编程工作
从很小的时候就在印度出生和成长,在那里我们只有少数的职业选择。工程师和医生是很多人的头两个选择。现在,随着互联网的兴起,事情正在发生变化,但是父母期望孩子成为医生或工程师的情况并不少见。
程序那些事儿
2023/03/07
3150
为什么我退出了编程工作
为什么 HTTPS 是安全的?
都知道 HTTPS 安全,可是为什么安全呢?看小电影还是浏览正常网站,一定要检查是不是 HTTPS 的,HTTP有可能被中间人攻击和拦截,下面就是详细的 HTTPS 原理,帮你解惑 HTTPS 为啥安全?
逆锋起笔
2021/09/29
7950
为什么 HTTPS 是安全的?
HTTP 协议是通过客户端和服务器的请求应答来进行通讯,目前协议由之前的 RFC 2616 拆分成立六个单独的协议说明(RFC 7230、RFC 7231、RFC 7232、RFC 7233、RFC 7234、RFC 7235),
Vincent-yuan
2021/12/08
7820
为什么 HTTPS 是安全的?
为什么 HTTPS 是安全的?
HTTP 协议是通过客户端和服务器的请求应答来进行通讯,目前协议由之前的 RFC 2616 拆分成立六个单独的协议说明(RFC 7230、RFC 7231、RFC 7232、RFC 7233、RFC 7234、RFC 7235),通讯报文如下:
民工哥
2020/09/15
8320
为什么 HTTPS 是安全的?
深入探讨HTTPS协议的原理和工作流程
在现代互联网中,保护用户的数据安全和隐私至关重要。HTTPS(Hypertext Transfer Protocol Secure)是一种通过在HTTP基础上加密通信内容来确保安全性和完整性的协议。本文将深入探讨HTTPS协议的原理和工作流程,帮助你更好地理解和使用HTTPS来保护网站和应用程序的安全性。
网络技术联盟站
2023/09/04
5840
深入探讨HTTPS协议的原理和工作流程
OGG的PURGEOLDEXTRACTS不能工作问题的解决
PURGEOLDEXTRACTS /ogg/dirdat/horcl/hz*,USECHECKPOINTS,MINKEEPDAYS 2
星哥玩云
2022/08/17
8420
聊一聊 HTTPS 的工作原理
本文聊聊 HTTPS 的一些东西,和大家扯扯 SSL 证书的整个工作流程。希望大家有一些基本的常识:
cxuan
2020/12/21
1.2K0
聊一聊 HTTPS 的工作原理
我为什么要创建一个不能被实例化的类
Python 由于多继承的原因,可能会出现钻石继承[1]又叫菱形继承。为了保留多继承的优点,但又摒除缺点,于是有了混入这种编程模式。
青南
2020/04/08
3.4K0
我为什么要创建一个不能被实例化的类
HTTPS工作原理和TCP握手机制
HTTPS在传输数据之前需要客户端(浏览器)与服务端(网站)之间进行一次握手,在握手过程中将确立双方加密传输数据的密码信息。TLS/SSL协议不仅仅是一套加密传输的协议,更是一件经过艺术家精心设计的艺术品,TLS/SSL中使用了非对称加密,对称加密以及HASH算法。握手过程的具体描述如下:
业余草
2019/08/14
1.6K0
今天,我和ChatGPT聊了聊工作的问题
今天,我和ChatGPT聊了聊关于工作的问题。 1、嵌入式软件工程师会不会被影响? 2、会影响哪些工作? 3、我需要从事哪些行业才不会被chatGPT替代?
杨源鑫
2023/02/16
7931
今天,我和ChatGPT聊了聊工作的问题
HTTPS 为什么是安全的(下)?
在上篇文章 HTTPS 为什么是安全的 ? (上) 中,我们借由 如何安全的传输信息 这个问题,引出了 HTTPS 中常用的密码学工具,对称加密,非对称加密,哈希,消息认证码,数字签名,证书 等等。这
路遥TM
2021/08/31
7050

相似问题

htaccess WWW to no-WWW不工作

21

为什么我的htaccess代码不能工作?

25

mod_rewrite www to no-www和http to https

30

为什么我的.htaccess重定向不能工作?

11

为什么我的.htaccess文件代码不能工作

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文