phpstudy环境Apache配置下实现https访问和301重定向

发布时间:2018-10-11 11:31:09   来源:文档文库   
字号:

phpStudy 2016环境下安装SSL证书教程

题外话:在网站上安装SSL证书,首先你要有这个证书,此教程的用到的私钥server.key,证书server.crt和根证书ca.crt都是自己做的,具体看“000Windows系统下制作公钥 私钥 ssl证书.doc”文档。

教程开始:

以下都是在:Phpstudy2016 Apache环境下

第一种方法(简单,快速,推荐)

第一步:【打开phpstudy】》【其他选项菜单】》【PHP扩展】》【php-openssl】前面勾选上。

第二步: 【打开phpstudy】》【其他选项菜单】》【站点域名管理】》【站点域名设置】网站域名添127.0.0.1(根据需要设置)

第三步: server.crt ca.crtserver.key三个文件后放到d:/ssl 目录下。

第四步: 打开 D:/phpStudy/Apache/conf/httpd.conf

在最后面添加SSL配置.

Listen 443

DocumentRoot "D:/phpStudy/WWW"

ServerName 127.0.0.1

ServerAlias 127.0.0.1

SSLEngine on

SSLCertificateFile "d:/ssl/server.crt"

SSLCertificateKeyFile "d:/ssl/server.key"

SSLCertificateChainFile "d:/ssl/ca.crt"

完成以上配置后,重启Apache,没错误的话,就可以用http://https://开头访问

如果此时能够正常启动,则说明添加的配置有错误(是不是重复监听了?证书路径对不对?证书是否有效?),请看错误日志(D:\phpStudy\Apache\logs\error.log),直到能够正常启动apache

第五步:http301重定向到https

完成第四步,还没有大功告成,因为访问http时还不会自动在网址前加https,怎么办?继续往下看

——创建一个文件名为.htaccess的文件放在网站根目录,可以用记事本新建一个空白文件,保存另存为时,在文件类型上选择所有文件就可以了 .htaccess文件内容如下:(

RewriteEngine on

RewriteBase /

RewriteCond %{SERVER_PORT} !^443$

RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]

注意:.htaccessApache服务器下的配置文件,如果你的服务器或者虚拟主机不是Apache环境则不适用此方法

补充:

Apache全局/局部https访问配置方法

一、全局https访问

1.找到apache安装目录的httpd.conf配置文件,进行一下操作:

2.#LoadModule rewrite_module modules/mod_rewrite.so(把代码前面的#号去掉);

3.httpd.conf加入代码:

RewriteEngine on

RewriteCond %{SERVER_PORT} !^443$

RewriteRule ^(.*)?$ https://%{SERVER_NAME}$1 [L,R]

重启apache即可。

二、指定路径访问使用https访问

1.httpd.conf加入代码:

RewriteEngine on

RewriteBase /test

RewriteCond %{SERVER_PORT} !^443$

RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

2.重启apache即可。

本文来源:https://www.2haoxitong.net/k/doc/bcc90982710abb68a98271fe910ef12d2bf9a91b.html

《phpstudy环境Apache配置下实现https访问和301重定向.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式