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 :查询一个文件属于哪个包
CentOS 5.3 apache问题小结
最新推荐文章于 2025-04-11 15:31:16 发布