检查httpd是否安装;
rpm -q httpd
安装httpd:
yum install httpd -y
启动httpd服务:
service httpd start
# 如果你更改过主机名此时会报一个小错误
通过修改/etc/hosts文件可以解决,
vim /etc/hosts 将当前的ip和主机名添加进去就好了;
172.16.249.135 是我现在的ip,Xuan是我的主机名,就这样添加进去就好了,
service httpd restart #重启一下httpd服务看效果,
关闭防火墙:
service iptables stop
# 在浏览器输入IP能够访问http服务了,会显示页面Apache 2 Test Page powered by CentOS
(1)
此时显示的页面是httpd默认的,在/etc/httpd/conf.d/welcome.conf文件中有定义,如果/var/www/html/下没有index.html 文件,那么默认在/var/www/error下的一个叫noindex.html文件,
不想让它这样显示的办法有三:个人推荐第二种,
1,将welcome.conf重命名或者删除
2,修改noindex.html文件内容
3,在工作目录下创建index.html
(2)
yum 安装httpd默认的工作目录为/etc/httpd 文档工作目录,
配置文件结构 grep 'Section' /etc/httpd/conf/httpd.conf
得知httpd配置文件有三段,
### Section 1: Global Environment # 全局环境配置
### Section 2: 'Main' server configuration # 核心服务配置
### Section 3: Virtual Hosts # 虚拟主机配置
第二段和第三段不能同时存在,默认是关闭虚拟主机,
指定httpd服务端口:
在配置文件内搜索Listen
表示httpd服务监听在172.16.249.135这个ip的80号端口上的,默认ip可以不指定,Listen也可以出现多个,比如这里的80 和 8080,这样写就通过172,16,249.135:80 172,16,249.135:8080 都能访问httpd服务,
(3)
指明网页文件的路径,按照它默认的格式,修改DocumentRoot路径,
DocumentRoot
(4)
站点路径访问控制,
基于本地文件系统路径 /
<Directory 'path/dir'>
</Directory>
基于URL /var/www/html
<location '/path/url'>
</localtion>
(5)
Directory 定义访问控制
Options
Indexes:如果访问路径下没有主页面,是否建立目录索引(绝对关闭啊)
FollowSysLinks:跟随符号连接指向的源文件,
# 这里有个问题,如果(1)里面的welcome.conf文件没删除的话,他会现出现noindex.html这文件,这样也不会创建目录索引,不过建议还是把Indexes给删除掉吧,
AllowOverride 对用户访问该目录的权限设置,不检查这个文件:.htaccess
(a)Order allow,deny #白名单
Deny from 172.16.100.177 #禁止这个IP访问
Allow from all # all表示所有
(b)Order deny,allow #黑名单
Allow from 172.16.100.177 #允许这个IP访问
Allow from all # all表示所有
(6)
定义默认的主页面
DirectoryIndex index.html #这就是为什么(1)加上index.html 就不会显示error/noindex.html的原因,
(7)
日志管理:
错误日志:
ErrorLog 定义了错误日志存放目录,
LogLevel 定义了错误记录的等级(日志错误有七级)
访问日志:
LogFormat 定义了记录日志格式
LogFormat "%{User-agent}i" agent
# "%{User-agent}i" 是日志记录格式, combined 表示被调用时的名称 LogFormat指令
CustomLog logs/access_log combined
# CustomLog指令 logs/access_log 日志路径 combined 日志名称
(3)
持久连接:
什么是持久连接,持久连接在WEB的应用,
KeepAlive off | on
MaxKeepAliveRequests 100
KeepAliveTimeout 15
(4)
MPM