apache服务是linux基础并且常见的一个服务,主要提供网站的web网络服务。
主要搭建配置如下:(安装环境为redhat7,不同环境命令略有所不同)
1.首先创建yum源:
mkdir /media/cdrom 创建ios文件的挂在目录
mount /dev/cdrom /media/cdrom 挂在ios镜像文件
使用vim创建yum源
vim /etc/yum.repos.d/rhel.repo
[rhel7]
name = rhel7 (yum仓库名称)
baseurl = file:///media/cdrom (ios镜像文件本地地址,还可以使用http和ftp地址)
enable = 1 (设置此源是否可用)
gpgcheck = 0 (设置此源是否校验文件)
到此yum源就创建完成,可以开始安装各种服务了
2.安装apache服务(apache服务名称不叫apache叫做httpd,一定不要记错了)
yum install -y httpd (安装httpd服务也是apache服务)
systemctl restart httpd (开启httpd服务)
systemctl enable httpd (将httpd服务加入到开启启动项中)
安装好之后可以在本地浏览器中输入 127.0.0.1 进行测试是否安装成功
httpd服务主目录:/etc/httpd
httpd服务配置文件:/etc/httpd/conf/httpd.conf (配置文件中包含注释行信息,全局配置,区域配置,)
httpd网站存放目录:/var/www/html
访问日志:/var/log/httpd/access_log
错误日志:/var/log/httpd/error_log
如果自己在宿主机上虚拟机服务的话一定要注意Iptables,记得iptables -F清空防火墙规则
下边来说说httpd的三种模式:
个人用户主页功能:在同一服务内给每个用户一个单独的网站
1.修改用户配置文件
2.开启个人用户主页功能和个人用户主页目录后需要目录
进入个人用户创建网站目录
su rhel
mkdir public_html
echo "this is user's website" > public_html/index.html
chmod -Rf 755 /home/rhel 需要将rhel用户目录权限修改,使得其他用户可以进行访问
此时访问还是属于无法访问,因为访问目录是/home/rhel目录该目录正常是不提供访问,需要修改selinux权限进行放行
getsebool -a | grep httpd 查看selinux中对应的httpd权限
· 进行修改权限放行操作
setsebool -P httpd_enable_homedirs=on -P属于永久生效,不加-P参数重启后会失效
配置完成后重启服务,访问网站则会出现如下页面
虚拟网站主机功能:1.基于IP地址
2.基于主机域名
3.基于端口号
首先来说说第一个基于IP地址的虚拟网站主机功能吧。该功能主要靠ip对应不同的访问目录进行访问。
使用虚拟机进行试验:1.在网卡中添加要访问主机的IP
2.修改配置文件
3.创建访问IP对应的网站文件目录
步骤:
填加完IP之后直接vim /etc/httpd/conf/httpd.conf进入配置文件(如下配置仅供参考,根据自己实际要求来)
配置好文件后,则需要创建供访问的目录:
创建完systemctl restart httpd 重启服务,在通过浏览器输入ip直接访问
接下来还有虚拟网站主机功能,在配置一下基于主机域名的服务吧。
1. 在主机中加入需要访问的域名
2.主机内有了要访问的域名后,则需要将主机对应关系加入到httpd服务配置中
3.httpd配置文件已经配置好了,现在就缺要访问的对应的目录及文件(根绝配置文件中目录创建文件)
4.所以配置都配置好了之后重启服务即可
systemctl restart httpd
基于ip和主机的虚拟主机都已经说完了,下面配置一下基于端口的虚拟主机
1.修改配置文件
将所要访问的端口号加入到配置文件中进行监听(6667端口系统已经默认被占用,如果联系时需要把6667改为其他端口)
2.创建配置中对应的访问目录
3.由于httpd进行了端口监听,所以在selinux中要进行端口的放行,否则端口无法被访问
查看http服务对应的端口
将所需要的端口在selinux中放行
重启服务即可访问
systemctl restart httpd