構筑LAMP框架之apache
1 Apache的安裝、配置
Apache 是 UNIX 系統中普遍使用的WWW服務器軟件。根據Netcraft的統計 (http://news.netcraft.com/archives/web_server_survey.html),目前因特網中,有超過百分之六十的服務器是使用Apache來提供網頁瀏覽的服務。Apache可以說是目前世界上使用人數最多的網頁服務器軟件,它不僅可以在 FreeBSD、UNIX、Linux 中運行,也可以安裝在 Windows 操作系統中。
Apache和FreeBSD一樣,在軟件版本上也有多個分支,目前較穩定的版本有1.3及2.0。Apache1.3系列開發已久,已經十分穩定了,不會再有重大的修改。而Apache2 系列是一個開發較活躍的版本,它和1.3最大的不同在于對多線程(multithreaded)的支持。目前Apache2.0.58是最主要的穩定版本,而2.2.2則還處于開發中的狀態。
在Debian上安裝Apache軟件非常方便,比在Windows系統上安裝同類軟件更為簡單,我只用一行命令就搞定了:
#apt-get install apache2
在Etch中存在Apache的兩個版本,Apache1和apache2,前者是一個久經考驗的穩定版本,目前仍然有許多的實際應用;后者則具有很多新的功能,處于與時俱進的考慮,我們上面安裝的是后者,安裝的版本是apache2.0.55。
以下是一些在實際使用中常常會遇到的問題:
1) 配置文件的位置:
在Etch中位于 /etc/apache2/apache2.conf
在其他版本可能位置和名稱有所不同,與apache1的位置也不同。
在/etc/apache2/下面,還有兩個目錄,分別是mods-available和mods-enabled,顯然前者是提供的模塊,后者是啟動了的能正常起作用的模塊。如果需要把提供的模塊使起作用,需要在后者的目錄下做一個前者的符號連接。
2) 缺省的主目錄:
/var/www/
系統安裝好后,我在/var/www目錄下寫入了一個簡單的index.html文件,只一句:
#cat index.html
This is a Debian server
然后在客戶端檢查是否輸出正確。
3) log文件的位置
log文件的作用是很大的,Apache有二個log文件,一個是所有登陸本apache服務器的記錄,/var/log/httpd- access.log,文件記錄了登陸的ip,時間,瀏覽器類型等;另一個是聯機錯誤記錄文件, /var/log/httpd-error.log,這個文件對于調試apache參數是很有作用的。兩個文件都是文本文件,可以由nano等文本編輯器來瀏覽、編輯,記錄文件的位置及文件名是由 httpd.conf中的相應配置來改變。
3) 啟動、停止和重新啟動httpd服務器的運行:
apapche2ctl start(stop restart)
這個命令比較有用,尤其是在修改配置文件之后。
4) 個人用戶目錄的問題:不同于apache1,重要修改配置文件中的UserDir,apache2把個人用戶作為一個模塊,則需要先:
cd /etc/apache2/mods_enabled
ln -s /etc/apache2/mods_available/userdir.conf userdir.conf
ln -s /etc/apache2/mods_available/userdir.load userdir.load
apache2ctl restart
同時修改主配置文件,注釋掉#UserDir public_html這句,再在用戶test的主目錄/home/test下面創建一個index.html文件,就可以瀏覽:
http://yourip/~test了。
5) 自動支持中文的問題
網頁的缺省字符集有參數 AddDefaultCharset ISO-8859-1
這時候在瀏覽器瀏覽中文網頁的時候,會亂碼,需要手動設置編碼方式為GBK或GB2312才能顯示中文
去掉注釋,修改為 AddDefaultCharset GB2312就可以了。
6) Apache 狀態信息
在安裝完 Apache 后,我們需要不斷了解服務器的系統各方面的情況。Apache2內建了server-status及server-info二種查看服務器信息的方法。 server-status是指服務器狀態信息,我們可以了解Apache目前運行的情形,包括占用的系統資源、目前聯機數量等。server-info 主要是顯示Apache的版本、加載的模塊信息等。
為使用這兩項功能,我們必須先修改 /etc/apache2/apache2.conf。
首先要自己手動添加一行ExtendedStatus On,否則得到的信息會不夠詳細。
然后分別找到和這兩段,把兩段內前面的注釋都去掉,并設置好訪問權限。不重視安全的話,可以設置allow from all.
再:
cd /etc/apache2/mods_enabled
ln -s /etc/apache2/mods_available/info.load info.load
然后就可以在瀏覽器以http://hostname/server-info訪問了。
6) 其他一些我認為比較重要的配置參數:
ServerRoot:指出服務器保存其配置、出錯和日志文件等的根目錄。
Listen:允許你綁定Apache服務到指定的IP地址和端口上,以取代默認值
DocumentRoot:你的文檔的根目錄。默認情況下,所有的請求從這個目錄進行應答。
HostnameLookups:指定記錄用戶端的名字還是IP地址
關鍵字:apache、數據庫、服務器
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解