CentOS 5.3 apache問題小結


1。apache頁面出現亂碼
apache的配置文件(/etc/httpd/conf/httpd.conf)裏指定了默認字符編碼,將下面一個註釋:
#AddDefaultCharset UTF-8

2。apache無法啓用80端口
默認80端口是不開放的,在/etc/sysconfig/iptables增加一項:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

3。如何讓apache開機自動啓動
chkconfig --add httpd

4。SELinux引發的問題
4.0如何查看SELinux的狀態
/usr/bin/setstatus -v

4.1瀏覽器無法訪問apache頁面
使用"ls -Z"查看DocumentRoot指定的路徑的"SELinux security context"是否滿足要求,如果不滿足,使用chcon改變它。相關的命令有:
ls -Z                      #查看文件(目錄)的"SELinux security context"
ps -Z                      #查看進程的"SELinux security context"
id -Z                      #查看用戶的"SELinux security context"
chcon                      #修改文件(目錄)的"SELinux security context"
如:
chcon --user=system_u --role=object_r --type=httpd_modules_t /path/file

4.2爲apache加載一個新的模塊,apache啓動就出現問題,如
如果使用下面三個命令啓動apache會出現問題:
apachectl start
/etc/init.d/httpd start
service httpd start
而用"/usr/sbin/httpd -X"啓動就沒有問題,那應該又是SELinux在作怪。有三個辦法解決這個問題,
4.2.1 修改/etc/selinux/config,禁用SELinux。
4.2.1 使用setenforce 0命令,讓SELinux允許apache各種操作
4.2.1 爲這個apache模塊單獨做個配置文件,並安裝到SELinux上
配置文件可由安裝日誌文件(var/log/audit/audit.log)生成,再用remodule安裝即可。
grep httpd /var/log/audit/audit.log | audit2allow -M mymod
remodule -i mymod.pp

一般都需要手動修改配置文件,手動安裝(這樣子更加放心)。
vim mymod.te
checkmodule -M -m -o mymod.mod mymod.te
semodule_package -o mymod.pp -m mymod.mod
remodule -i mymod.pp

相關命令(文件):
/etc/selinux/config                       #保存SELinux的安全級別
sestatus                                  #查看SELinux狀態
setenforce                                #設置SELinux運行模式
audit2allow                               #根據警告日誌生成配置文件
checkmodule                               #檢查配置文件正確性
semodule_package                          #製作二進制配置文件
semodule -l                               #列出已經安裝了的SELinux配置模塊
semodule -i mymod.pp                      #安裝一個模塊
semodule -r mymod                         #卸載一個模塊
http://wiki.centos.org/HowTos/SELinux     #介紹SELinux的文檔

SELinux相關的安裝包有:
libselinux-utils-1.33.4-5.1.el5
policycoreutils-1.33.12-14.2.el5

5.包管理工具
yum用法跟apt差不多
rpm -i                   #安裝軟件包
rpm -e                   #刪除
rpm -qa                  #查詢所有已安裝的RPM
rpm -qi                  #name 查詢這個軟件詳細信息
rpm -ql                  #顯示列表
rpm -qf                  #path  :查詢一個文件屬於哪個包

發佈了93 篇原創文章 · 獲贊 14 · 訪問量 55萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章