php設(shè)置https的方法?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!
創(chuàng)新互聯(lián)專(zhuān)注于網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站制作、網(wǎng)站開(kāi)發(fā)。公司秉持“客戶至上,用心服務(wù)”的宗旨,從客戶的利益和觀點(diǎn)出發(fā),讓客戶在網(wǎng)絡(luò)營(yíng)銷(xiāo)中找到自己的駐足之地。尊重和關(guān)懷每一位客戶,用嚴(yán)謹(jǐn)?shù)膽B(tài)度對(duì)待客戶,用專(zhuān)業(yè)的服務(wù)創(chuàng)造價(jià)值,成為客戶值得信賴的朋友,為客戶解除后顧之憂。
php設(shè)置https的方法:首先設(shè)置“httpd.ini”并添加相關(guān)配置;然后將“httpd-ssl.conf”里面的“VirtualHost”配置完整路徑;最后使http重定向到https即可。
設(shè)置https以及http轉(zhuǎn)https的問(wèn)題
公司用的是阿里云服務(wù)器win2008server r2 ,環(huán)境是phpwamp,出現(xiàn)許多問(wèn)題。2018-11-12
一 設(shè)置https
1、設(shè)置httpd.ini 取消以下三個(gè)配置的#
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配置要用完整路徑,支持多個(gè)https同時(shí)使用
例如這樣既可:
#百度官方網(wǎng)站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 #淘寶官方網(wǎng)站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
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" SSLOptions +StdEnvVars AllowOverride All Require all granted SSLOptions +StdEnvVars BrowserMatch "MSIE [2-5]" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0
上圖是phpwamp軟件配置ssl的代碼(***是目錄路徑和文件名 ,這里抹除)
最后要注意的是,查看httpd-ssl.conf文件里面所使用的443端口是否被占用,如果被占用Apache也會(huì)啟動(dòng)失敗。
3、因?yàn)槭前⒗镌?a title="服務(wù)器" target="_blank" >服務(wù)器,所有需要在阿里云后臺(tái)管理開(kāi)啟443端口
4、在服務(wù)器上的防火墻增加入站規(guī)則 443
留意SSLCertificateChainFile的地址配置,三個(gè)ssl路徑地址中任何一個(gè)路徑錯(cuò)誤都會(huì)造成apache的啟動(dòng)失敗,如有問(wèn)題,請(qǐng)重點(diǎn)排查這處。
二 http重定向到https
當(dāng)你的站點(diǎn)使用了HTTPS之后,你可能會(huì)想把所有的HTTP請(qǐng)求(即端口80的請(qǐng)求),全部都重定向至HTTPS(即端口443)。這時(shí)候你可以用以下的方式來(lái)做到:(Apache mod_rewrite)
把這段代碼放在.htaccess文件(網(wǎng)站根目錄下),即可實(shí)現(xiàn)HTTP到HTTPS的重定向。
RewriteEngine On RewriteBase / RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://www.baidu.com/$1 [R=301,L]
而當(dāng)你又想用回HTTP的時(shí)候,反過(guò)來(lái)就可以了:
RewriteEngine On RewriteBase / RewriteCond %{SERVER_PORT} 443 RewriteRule ^(.*)$ https://www.baidu.com/$1 [R=301,L]
其中R=301表示Moved Permanently,即告訴搜索引擎或者瀏覽器下去直接訪問(wèn)后者的地址,
如果只是試驗(yàn)性地重定向,可以使用R=302(Found),臨時(shí)跳轉(zhuǎn)
感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)php設(shè)置https的方法大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。