標籤:支援 自訂 drive 安全 ESS sys stat php版本 rtu
1,apache是什嗎?
目前最主流的三個Web伺服器是Apache Nginx IIS
2,環境搭建
linux系統安裝xampp:
先下載xampp for linux,放在/opt檔案夾下,程式員常常把程式放在這個檔案夾下,便於管理。
輸入命令自動安裝:sudo ./xampp-linux-x64-5.6.23-0-installer.run ,圖形介面點擊next,finish,安裝完成。
運行和停止:命令分別是>sudo /opt/lampp/xampp start 和 >sudo /opt/lampp/xampp stop
啟動圖形控制介面:sudo /opt/lampp/./manager-linux-x64.run
設定檔目錄:
Apache主目錄:/opt/lampp/htdocs/
Apache設定檔:/opt/lampp/etc/httpd.conf
MySQL設定檔:/opt/lampp/etc/my.cnf
PHP設定檔:/opt/lampp/etc/php.ini
ProFTPD設定檔:/opt/lampp/etc/proftpd.conf
PHPMyadmin設定檔:/opt/lampp/phpmyadmin/config.inc.php
常用的xampp操作命令:
啟動/停止/重啟Apache:/opt/lampp/lampp start/stop/restart(包括啟動/停止/重啟了mysql,proftpd)
安全設定:/opt/lampp/lampp security
使用php版本/查看版本:/opt/lampp/lampp php4(5)/phpstatus
只啟動和停止Apache:/opt/lampp/lampp startapache/stopapache
只啟動和停止MySQL:/opt/lampp/lampp startmysql/stopmysql
只啟動和停止ProFTPD伺服器:/opt/lampp/lampp startftp/stopftp
啟動和停止Apache的SSL支援:/opt/lampp/lampp startssl/stopssl
隨系統自啟動:
ln –s /opt/lampp/lampp/etc/rc.d/rc3.d/S99lampp
ln –s /opt/lampp/lampp/etc/rc.d/rc4.d/S99lampp
ln –s /opt/lampp/lampp/etc/rc.d/rc5.d/S99lampp
取消自啟動:
ln –s /opt/lampp/lampp K01lampp
卸載XAMPP:rm –rf /opt/lampp
3,web伺服器apache架構與原理
web伺服器的工作流程:
1,用戶端發送請求:用戶端(通過瀏覽器)和Web伺服器建立TCP串連,串連建立以後,向Web伺服器發出訪問請求,根據HTTP協議,該請求中包含了用戶端的IP地址、瀏覽器的類型和請求的URL等一系列資訊。
2,伺服器解析請求:Web伺服器對請求按照HTTP協議進行解碼,然後Web伺服器軟體現在就知道了,它應該找到請求的檔案,並使用特定的協議將記憶體返回給客戶。
3,讀取其他資訊:除了訪問內容以外的資訊
4,完成請求的動作:若沒有錯誤出現,WWW伺服器將執行請求所要求的動作。web伺服器在其文檔樹中搜尋請求的檔案(/sample.html)。若檔案能找到並可正常讀取,首先web伺服器會發送狀態代碼和一些描述性的資訊,然後這個文檔被發出,同時服務軟體的標識以及檔案的時間屬性資訊也被包含在頭域中。如果檔案沒有找到或者無法讀取,則請求沒法滿足,這時候伺服器會返回一個狀態代碼,表示請求有誤。
5,關閉檔案和網路連接,結束會話:當回應被發出以後,web伺服器會關閉整個會話,它會關閉被請求的檔案,關閉網路連接埠而結束網路連接。
apache架構虛擬目錄:
在xampp中,我預設的localhost目錄是:C:/xampp/htdocs,假設該目錄下有一個test.php檔案,則,在瀏覽器中訪問localhost/test.php就能列印出test.php的內容:hello i am main web!(直接存取localhost的話會顯示出XAMPP的導引頁面)
需求,建立一個虛擬目錄,位置是C:/xampp/htdocs/daqing_test,訪問該位置的連結是:www.daqing.com,該目錄下有一個test.php檔案,瀏覽器訪問的時候會顯示:hello i am vitualhost!
建立虛擬網站:
1,開啟Apache安裝目錄下conf/httpd.conf檔案,需要把檔案中以下兩行的注釋去掉,也就是去掉井號,儲存。
#LoadModule vhost_alias_module modules/mod_vhost_alias.so#Include conf/extra/httpd-vhosts.conf
2,開啟Apache安裝目錄下/conf/extra/httpd-vhosts.conf檔案,先找到NameVirtualHost *:80 去掉注釋的#號,目測這是一個專門配置虛擬網站的檔案。按照如下格式將自訂的網站資訊寫入到該檔案末尾:
<VirtualHost *:80> DocumentRoot "/xampp/htdocs/daqing_test" ServerName www.daqing.com</VirtualHost>
注意,提前建好/xampp/htdocs/daqing_test檔案夾
3,在系統的設定檔中改一下hosts(C:\Windows\System32\drivers\etc\hosts),如果這個檔案只有管理員才能修改,那就請點擊:檔案 -- 開啟windows power shell--以管理員身份開啟windows power shell -- 命令列輸入>cmd -- >notepad hosts -- 修改:加入兩行
127.0.0.1 www.daqing.com
注意兩組數中間有空格或者是\t。記得儲存。
4,重啟apache,案例說虛擬網站應該是沒問題了,但是我的localhost此時已經不能訪問了!哭,那怎麼辦呢?接著想辦法配置
5,我第一步的操作是把設定檔httpd.conf中的這一句話注釋掉了
#ServerName localhost:80
但是localhost仍舊不工作,
6,然後我去httpd-vhosts.conf中重新定義了localhost,也就是按照添加虛擬網站的思想去加上了localhost
<VirtualHost _default_:80> ##ServerAdmin [email protected] DocumentRoot "C:/xampp/htdocs" ServerName localhost ##ServerAlias www.dummy-host2.localhost ##ErrorLog "logs/dummy-host2.localhost-error.log" ##CustomLog "logs/dummy-host2.localhost-access.log" combined</VirtualHost>
教程說_default_ 必須加,好吧,雖然不甚理解,那我加上吧。帶井號的注釋我也不大懂,加不加都可以。
7,最後一步,還是要去系統的hosts檔案中加上這一句話:
127.0.0.1 localhost
這時候去瀏覽器訪問localhost/test.php或者www.daqing.com/test.php都可以成功!終於成功了。嗚嗚嗚
參考:
https://www.jianshu.com/p/98b0968f77be
78424441
50890197
4.apache和mysql是如何協作的?
在用php語言直接在網站寫好介面,還是需要先會php程式設計語言。
apache基礎學習