centos7 部署Apache服务器
Apache程序是目前拥有很高市场占有率的Web服务程序之一,其跨平台和安全性广泛被认可且拥有快速、可靠、简单的API扩展。 它的名字取自美国印第安人土著语,寓意着拥有高超的作战策略和无穷的耐性,在红帽RHEL5、6、7系统中一直作为着默认的Web服务程序而用,并且也一直是红帽RHCSA和红帽RHCE的考试重点内容。Apache服务程序能运行在Linux系统、Unix系统甚至是Windows系统中,支持基于IP、域名及端口号的虚拟主机功可以、支持多种HTTP认证方式、集成有代理商服务器板块、安全Socket层(SSL)、可以够实时监视服务状态与定制日志消息,并有着各类丰富的板块支持。
第一步:安装Apache服务程序(apache服务的软件包名称叫做httpd)
yum install httpd -y
第二步: 将Apache服务增加到 开机自启中
第三步:打开firefox浏览器 测试 127.0.0.1
这样 我们的apache服务就安装好了 !
小编下面给大家 讲解一下 少量配置文件 。以及apach 的应使用服务
刚学会的安装和运行只是学习httpd服务程序成功路上的一小步而已,对于Linux系统中服务的配置就是在修改其配置文件,因而还需要知道这些配置文件分别干什么使用的,以及存放到了什么位置:
服务目录 | /etc/httpd |
主配置文件 | /etc/httpd/conf/httpd.conf |
网站数据目录 | /var/www/html |
访问日志 | /var/log/httpd/access_log |
错误日志 | /var/log/httpd/error_log |
我们再来看下主配置文件: vim /etc/httpd/conf/httpd.conf
是不是下了 一跳,一共有353行 。但其实 没有关系的,这些配置文件中 大部分都是 注释信息,剩下的 就只有全局配置信息,区域配置信息。
在httpd服务程序主配置文件中最为常使用的参数包括有:
ServerRoot | 服务目录 |
ServerAdmin | 管理员邮箱 |
User | 运行服务的使用户 |
Group | 运行服务的使用户组 |
ServerName | 网站服务器的域名 |
DocumentRoot | 网站数据目录 |
Listen | 监听的IP地址与端口号 |
DirectoryIndex | 默认的索引页页面 |
ErrorLog | 错误日志文件 |
CustomLog | 访问日志文件 |
Timeout | 网页超时时间,默认为300秒. |
Include | 需要加载的其余文件 |
从上面表格中能得知DocumentRoot正是使用于定义网站数据保存路径的参数,其参数的默认值是把网站数据存放到了/var/www/html目录中的,而网站首页的名称应该叫做index.html,因而能手动的向这个目录中写入一个文件来替换掉httpd服务程序的默认网页,这种操作是立即生效的
echo “hello everyone my name is feixiangkeji” > /var/www/html/index.html
紧接着 我们 打开firefox 浏览器 查看一下:
测试成功!而后 我们 来修改 网站数据的主目录。刚开始 我们默认的网站主目录是/var/www/html
我们把它改变为 /home/wwwroot/中 。同样我们也要在/home/wwwroot/中 创立首页文件
mkdir /home/wwwroot
echo “this is feixiangkeji” > /home/wwwroot/index.html
目录,首页文件都创立好了 ,我们是不是要修改 网站的配置文件啊
vim /etc/httpd/conf/httpd.conf
找到大约在119行周围的DocumentRoot参数以及大约在123行周围的,修改后记得保存:
systemctl restart httpd
重新启动httpd服务程序后便可验证效果啦!!!但我们发现 还是刚开始测试页面 !!而刚新建的首页文件并不显示出来?????
httpd服务程序的功可以就是让使用户可以够访问到网站内容,因而让SELinux对网页访问功可以一定是默认允许的,但刚刚把保存网站数据的默认路径修改为了/home/wwwroot目录,这似乎就产生问题了,也就是说现在httpd提供的网站服务却要去获取普通使用户家目录中的数据了,这个行为触犯SELinux服务的监管项目。既然已经找出问题所在了
下面 小编就来 先关闭SElinux :
[root@localhost ~]# setenforce 0
[root@localhost ~]# getenforce
Permissive
但这种修改只是临时的,重启后就会失效!!!!!!
我们再次访问网站
果不其然 ,就是SElinux 搞的鬼
[root@localhost ~]# ls -Zd /var/www/html
[root@localhost ~]# ls -Zd /home/wwwroot
在文件上面设置的SELinux安全上下文是由使用户段、角色段以及类型段等等多个信息项目共同组成的,使用户段中system_u代表系统进程身份,角色段object_r代表文件目录角色,类型段httpd_sys_content_t代表是网站服务系统文件。因为SELinux服务实在过于复杂,因而现在您只要要简单熟习SELinux服务的作使用即可以,现在这种情况的处理办法就是把当前网站目录/home/wwwroot的SELinux安全上下文修改为跟原始网站目录的一样即可以啦~
semanage命令使用于查询与修改SELinux的安全上下文,格式为:“semanage [选项] [文件]”。
-l参数使用于查询、-a参数使用于增加、-m参数使用于修改、-d参数使用于删除等等
[root@localhost ~]# setenforce 1 把SElinux 改为强制
而后我们才可以修改SElinux 的 上下文
-Z 查看文件上下文信息,也就是文件的SELinux信息,能肤浅地了解为各个使用户对该文件或者文件夹的权限(只有开启Selinux才有效)
-d 只列出目录,不包括内容,不引使用符号链接
因而ls -Zd的意思就是查看该路径下文件夹的selinux属性。
假如系统里没有 semanage 命令
我们能 yum provides /usr/sbin/semanage 查看 semanage对应的 软件包
而后 小编就 yum install policycoreutils-python
这样 semanage 命令即可以使用了
[root@localhost ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot
[root@localhost ~]# semanage fcontext -a -t httpd_sys_content_t /home/wwwroot/*
不过仅仅是这样设置完还不可以让网站立即恢复访问,还需要用restorecon命令来让刚刚设置的SELinux安全上下文立即生效,能加上-Rv参数指定进行对目录的递归操作以及显示SELinux安全上下文的修改过程:
[root@localhost ~]# restorecon -Rv /home/wwwroot/
刷新一下
这样 我们网站初期 少量基础的东西 就先说到这 ,请关注我接下来发表的 Apache 个人网站主页,
虚拟网站主机功可以,基于IP地址的,基于端口的,和基于域名访问的三种模式。
谢谢大家 欢迎大家在下面留言区评论!!
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » centos7 部署Apache服务器