Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache htaccess:重定向到https不使用www_Apache_.htaccess_Ssl_Redirect - Fatal编程技术网

Apache htaccess:重定向到https不使用www

Apache htaccess:重定向到https不使用www,apache,.htaccess,ssl,redirect,Apache,.htaccess,Ssl,Redirect,借助于此,我刚刚在CentOS 7.3中安装了Origin CA证书 然后,我使用以下.htaccess命令将所有http请求重定向到https和www到非www RewriteEngine On RewriteCond %{HTTPS} on RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] RewriteRule ^ https:/

借助于此,我刚刚在CentOS 7.3中安装了Origin CA证书 然后,我使用以下
.htaccess
命令将所有
http
请求重定向到
https
www
非www

RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
以下是一些问题,

1) 当我将
RewriteCond%{HTTPS}设置为off时
会给出
过多的重定向
错误

2) 当我使用以下URL访问站点时,它不会重定向到https

3) 但是,它可以很好地工作(使用WWW)


不确定我是否在SSL配置中做了任何错误,如果有任何帮助,我们将不胜感激。

您可以使用此单一规则替换
http->https
www->non-www
重定向规则:

RewriteEngine On

# remove www and turn on https rule
RewriteCond %{HTTP_HOST} ^www\. [NC,OR]
RewriteCond %{HTTP:X-Forwarded-SSL} =off
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L,NE]

http://www.website.com
重定向到
https://website.com
(工作正常)。但是
http://website.com
没有重定向Apache 2.4.6…它再次说
ERR\u TOO\u MANY\u重定向
可能你是对的,这次
http://www.website.com
重定向到
https://website.com
(工作正常)。但是
http://website.com
无法使用
RewriteCond%{REQUEST_SCHEME}=http
RewriteCond%{HTTPS}off
这次
http://www.website.com
重定向到
https://website.com
(工作正常)。但是
http://website.com
不起作用不确定,它在一个实时站点上对我有效
RewriteCond%{HTTP:X-Forwarded-SSL}=off
RewriteCond%{REQUEST_SCHEME}=HTTP
RewriteCond%{HTTP:X-Forwarded-Proto}!https应该可以工作。