最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

关于php设置https的问题

来源:动视网 责编:小采 时间:2020-11-02 18:02:13
文档

关于php设置https的问题

关于php设置https的问题:php设置https的方法:首先设置httpd.ini并添加相关配置;然后将httpd-ssl.conf里面的VirtualHost配置完整路径;最后使http重定向到https即可。推荐:《PHP视频教程》设置https以及http转https的问题公司用的是阿里云服务器win2008
推荐度:
导读关于php设置https的问题:php设置https的方法:首先设置httpd.ini并添加相关配置;然后将httpd-ssl.conf里面的VirtualHost配置完整路径;最后使http重定向到https即可。推荐:《PHP视频教程》设置https以及http转https的问题公司用的是阿里云服务器win2008


php设置https的方法:首先设置“httpd.ini”并添加相关配置;然后将“httpd-ssl.conf”里面的“VirtualHost”配置完整路径;最后使http重定向到https即可。

推荐:《PHP视频教程》

设置https以及http转https的问题

公司用的是阿里云服务器win2008server r2 ,环境是phpwamp,出现许多问题。2018-11-12

一 设置https

1、设置httpd.ini 取消以下三个配置的#

LoadModule socache_shmcb_module modules/mod_socache_shmcb.so 
LoadModule ssl_module modules/mod_ssl.so 
Include conf/extra/httpd-ssl.conf

2、并且注意 httpd-ssl.conf里面的VirtualHost配置要用完整路径,支持多个https同时使用

例如这样既可:

#百度官方网站
<VirtualHost *:443> 
 DocumentRoot "D:/WWW/baidu/public/" 
 ServerName www.baidu.com:443 
 SSLEngine on 
 SSLCertificateFile D:/ssl/www.baidu.com/www.baidu.com.cer 
 SSLCertificateKeyFile D:/ssl/www.baidu.com/www.baidu.com.key 
 SSLCertificateChainFile D:/ssl/www.baidu.com/www.baidu.com_ca.crt 
</VirtualHost>
#淘宝官方网站
<VirtualHost *:443>
 DocumentRoot "D:/WWW/taobao/public/" 
 ServerName www.taobao.com:443 
 SSLEngine on 
 SSLCertificateFile D:/ssl/www.taobao.com/www.taobao.com.cer 
 SSLCertificateKeyFile D:/ssl/www.taobao.com/www.taobao.com.key 
 SSLCertificateChainFile D:/ssl/www.taobao.com/www.taobao.com_ca.crt 
</VirtualHost>
<VirtualHost _default_:443>
 DocumentRoot "C:/*****/PHPWAMP_IN2/wwwroot/test"
 ServerName www.test.com:443
 ServerAlias test.com
 DirectoryIndex index.html index.htm index.php default.php app.php u.php
 ErrorLog logs/example_error.log
 CustomLog logs/example_access.log 
 "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x "%r" %b"
 SSLEngine on
 SSLCertificateFile "C:/**************.com_public.crt"
 SSLCertificateKeyFile "C:/**********.com.key"
 SSLCertificateChainFile "C:/*****.com_chain.crt"
<Directory "C:/*****/PHPWAMP_IN2/wwwroot/test">
 SSLOptions +StdEnvVars
 AllowOverride All
 Require all granted
</Directory>
<FilesMatch ".(shtml|phtml|php)$">
 SSLOptions +StdEnvVars
</FilesMatch>
 BrowserMatch "MSIE [2-5]" 
 nokeepalive ssl-unclean-shutdown 
 downgrade-1.0 force-response-1.0
</VirtualHost>

上图是phpwamp软件配置ssl的代码(***是目录路径和文件名 ,这里抹除)

最后要注意的是,查看httpd-ssl.conf文件里面所使用的443端口是否被占用,如果被占用Apache也会启动失败。

3、因为是阿里云服务器,所有需要在阿里云后台管理开启443端口

4、在服务器上的防火墙增加入站规则 443

留意SSLCertificateChainFile的地址配置,三个ssl路径地址中任何一个路径错误都会造成apache的启动失败,如有问题,请重点排查这处。

二 http重定向到https

当你的站点使用了HTTPS之后,你可能会想把所有的HTTP请求(即端口80的请求),全部都重定向至HTTPS(即端口443)。这时候你可以用以下的方式来做到:(Apache mod_rewrite)

把这段代码放在.htaccess文件(网站根目录下),即可实现HTTP到HTTPS的重定向。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.baidu.com/$1 [R=301,L]
</IfModule>

而当你又想用回HTTP的时候,反过来就可以了:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{SERVER_PORT} 443
RewriteRule ^(.*)$ https://www.baidu.com/$1 [R=301,L]
</IfModule>

其中R=301表示Moved Permanently,即告诉搜索引擎或者浏览器下去直接访问后者的地址,

如果只是试验性地重定向,可以使用R=302(Found),临时跳转

文档

关于php设置https的问题

关于php设置https的问题:php设置https的方法:首先设置httpd.ini并添加相关配置;然后将httpd-ssl.conf里面的VirtualHost配置完整路径;最后使http重定向到https即可。推荐:《PHP视频教程》设置https以及http转https的问题公司用的是阿里云服务器win2008
推荐度:
标签: 设置 php 问题
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top