http需重定向到https

修改/usr/local/apache/conf/httpd.conf,在最后加入
RewriteEngineon
RewriteCond%{SERVER_PORT}!^443$
RewriteCond%{REQUEST_URI}!^/help/(.*)$
RewriteRule^/?(.*)$
https://%{SERVER_NAME}/$1 [L,R]
rewrite规则:
第一句:启动rewrite引擎;
第二句:rewrite的条件是访问的服务器端口不是443端口;
第三句:这是正则表达式,^是开头,$是结束,/?表示有没有/都可以(0或1个),(.*)是任何数量的任意字符;
整句的意思是讲:启动rewrite模块,将所有访问非443端口的请求,url地址内容不变,将http://变成https://。


前提是apache安装了rewirte模块,可以看modules下是否有mod_rewrite.so

在httpd.conf中,如果以下给注释掉了,就打开:
LoadModulerewrite_modulelibexec/mod_rewrite.so
AddModulemod_rewrite.c

你可能感兴趣的:(http,https)