本文目錄一覽:
phpstudy的apache配置https流程和問題
最近由於弄了一個小程序,需要配置htpps的域名,把操作流程記錄一下:
1、去西部數碼花了1元弄了一套證書,包含三個文件:
2、把這三個證書文件放進服務器,phpstudy裏面創建網站,
把三個證書一個個導入進去,然後選好根目錄,php版本,保存後創建網站。
3、上面操作完成後,開始設置
4、設置完httpd.conf後,開始設置httpd-ssl.conf
裏面這樣配置:
VirtualHost *:443
DocumentRoot “你的域名指向的完整路徑”
ServerName 你的域名
Directory “你的域名指向的完整路徑”
Allow from all
AllowOverride All
#Options -Indexes +FollowSymLinks +ExecCGI
Options -Indexes +FollowSymLinks
#Order allow,deny
#Require all granted
/Directory
SSLEngine on
SSLCertificateFile D:/phpstudy_pro/Extensions/Apache2.4.39/cert/xxxxxxx.cer
SSLCertificateKeyFile D:/phpstudy_pro/Extensions/Apache2.4.39/cert/xxxxxx.key
SSLCertificateChainFile D:/phpstudy_pro/Extensions/Apache2.4.39/cert/xxxxxx.crt
/VirtualHost
到這裡配置就完畢了,我這裡訪問https正常,搞定
apache和php配置啟動成功,但文件驗證不成功
檢查php的配置。
1、將phpdisplaystartuperrors的值修改成On。
2、然後啟動apache。
3、接着找到extensionphpXXXXdll並在前面添加分號即可。
apache 如何部署 php
將你的apache的網站發佈到你本機網卡的地址上,然後讓處於同一網段內的另一台電腦訪問你作為服務器這個電腦的ip即可
注意端口號
1、保證你的apache能正常啟動,然後打開httpd.conf那個配置文件,檢查一下Listen服務器端口,默認監聽端口為80,不是就改成80
2、配置服務器根目錄權限
Directory “c:/www/”
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Allow from all
/Directory
注意「c:/www/」為你網站根目錄。重點是Allow from all,否則訪問不進去
3、配置虛擬主機
VirtualHost 192.168.11.108
ServerName 192.168.11.108
DocumentRoot “c:/www/test/”
/VirtualHost
注意VirtualHost 與ServerName一致,除非你有DNS主機。這個ip是我本機的,你要改成你機器的ip,如果不會查IP另追問,DocumentRoot 為你網站的存放目錄,你要發佈的網頁就在這個目錄下,注意要在服務器根目錄下,否則要另外配置權限。
4、重啟apache服務。
5、在apache重啟成功後,在你本機,用瀏覽器訪問你的頁面。我這裡就是192.168.11.108/index.php,你要改成你的ip地址,成功,則發佈完成,其他人也可以這麼訪問網頁了
6、如果,在本機訪問成功,而在其他設備無法訪問,請修復網絡問題,有關網絡的問題請另追問,並說明報錯等狀況
我剛才看到,樓主在問題補充中提到了域名,這個的話就不是apache能完成的了,這裡需要依靠DNS服務器來解決。
正常的家用電腦,以及路由器,都會自動請求遞交給社會公用的域名服務器去進行域名解析,除非你的域名是經過國家正規管理部門購買的域名,否則,所用的域名是不會出現在公網DNS服務器上的,也就不能解析到你的服務器電腦上
簡單的配置是這樣的。在你服務器電腦上,不僅配置的apache 發佈到端口ip。然後還要配置一個DNS服務器,配置你要的域名xx.com為你機器ip的別名。然後將你訪問設備的首選DNS指向你的服務器DNS,讓你的私有DNS對域名進行解析 即可
mac apache環境 運行php
mac 自帶環境 打開終端 輸入 sudo apache -v 和php -v 即可查看版本
啟動apache
sudo apachectl start Mac自帶的Apache啟動了 在瀏覽器輸入「」,會顯示「It works!」,說明服務器已經啟動成功了。Apache默認根目錄在「/Library/WebServer/Documents/」下。
配置文件(httpd.config)保存在/etc/apache2
修改配置文件 sudo vi /etc/apache2/httpd.conf
將默認目錄/Library/WebServer/Documents 替換成自己需要的目錄
LoadModule php7_module libexec/apache2/libphp7.so 將前面的# 去掉
運行localhost 會報錯:You don’t have permission to access / on this server.
這時修改下apache的配置文件httpd.conf:
AllowOverride None
Require all granted
Order deny,allow
Allow from all
然後 sudo apachectl configtest 查看是否修改成功
配置虛擬機
在配置文件httpd.conf的最後一行 並cd 進去 再 vi 進vhosts.conf文件
接着來到下圖 我們可以設置我們拉下來的項目的serverName
修改host文件 sudo vi /etc/hosts
接着在瀏覽器地址 輸入我們項目的servername 即可訪問
如果沒有成功 一般是緩存原因 換個瀏覽器 或者清除緩存 關閉瀏覽器程序 並重啟
(以後增加項目 改servername 谷歌有緩存 記得關閉再重啟)
一般命令
sudo apachectl start #啟動服務器
sudo apachectl restart 重啟
sudo apachectl -v 查看服務器版本
sudo apachectl stop #關閉服務器
sudo vi /etc/apache2/httpd.conf 輸入密碼 進行配置文件修改
sudo apachectl configtest 查看更改是否成功
默認命令行 i 插入模式 esc退出模式
:wq! 保存和退出 (!表示強制修改) 要在英文模式下輸入
:w 保存
:q退出
:q! 強制退出 (誤改了東西 強制退出 就不會保存)
命令模式下 /content 查找(n查找下一個)
第一步 配置虛擬機
cd /private/etc/apache2/other
vi vhosts.conf
第二步 更改指向
sudo vi /etc/hosts
報錯:
E325: ATTENTION
Found a swap file by the name “/var/tmp/vhosts.conf.swp”
原因:
其一,是當前有其他的進程正在對相同的文檔進行編輯;
其二,之前的編輯會話被銷毀了(crashed)(也就是說,你上次編輯的時候,沒有保存就強制離開了。)
原理:
我們在編輯文件的時候,並不是對原有文件進行修改和覆蓋的,而是新建一個副本,名字叫xx.swp,我們對文件的編輯都放在了這個副本裏面,這也是為什麼我們能進行撤銷的原因,我們並沒有對原有的文件進行修改。當我們正常退出時,這個文件就正常消失,而當我們異常退出時,這個文件就會作為隱藏文件,當我們下次啟動vim時,它就會提示我們上次編輯時,有一個文件異常退出了,是否要進行恢復。也就是彈出E325錯誤。當我們異常退出時,這個隱藏文件會幫助我們還原到上次編輯的狀態。也就相當於是一個自動保存的功能。
解決辦法:
進入/var/tmp/vhosts.conf.swp 並將這個文件刪除
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/239677.html