Apache服务配置
Apache
1、安装Apache服务
第1步:把光盘设备中的系统镜像挂载到/media/cdrom目录。
[root@zhangjh ~]# mkdir -p /media/cdrom/ [root@zhangjh ~]# mount /dev/cdrom /media/cdrom/
第2步:使用Vim文本编辑器创建Yum仓库的配置文件。
[root@zhangjh ~]# vim /etc/yum.repos.d/rhce.repo [rhel-media] name=rhce.repo baseurl=file:///media/cdrom enable=1 gpgcheck=0
第3步:动手安装Apache服务程序。
[root@zhangjh ~]# yun install -y httpd
第4步:启用httpd服务程序并将其加入到开机启动项。
[root@zhangjh ~]# systemctl start httpd [root@zhangjh ~]# systemctl enable httpd ln -s '/usr/lib/systemd/system/httpd.service' '/etc/systemd/system/multi-user.target.wants/httpd.service'
地址栏中输入http://127.0.0.1并按回车键,就可以看到用于提供Web服务的httpd服务程序的默认页面了
2、配置文件参数
服务目录 | /etc/httpd |
主配置文件 | /etc/httpd/conf/httpd.conf |
网站数据目录 | /var/www/html |
访问日志 | /var/log/httpd/access_log |
错误日志 | /var/log/httpd/error_log |
http主配置文件常用参数(/etc/httpd/conf/httpd.conf)
ServerRoot | 服务目录 |
ServerAdmin | 管理员邮箱 |
User | 运行服务的用户 |
Group | 运行服务的用户组 |
ServerName | 网站服务器的域名 |
DocumentRoot | 网站数据目录 |
Listen | 监听的IP地址与端口号 |
DirectoryIndex | 默认的索引页页面 |
ErrorLog | 错误日志文件 |
CustomLog | 访问日志文件 |
Timeout | 网页超时时间,默认为300秒 |
DocumentRoot参数用于定义网站数据的保存路径,其参数的默认值是把网站数据存放到/var/www/html目录中;而当前网站普遍的首页面名称是index.html,因此可以向/var/www/html目录中写入一个文件,替换掉httpd服务程序的默认首页面,该操作会立即生效。
[root@zhangjh ~]# echo "welcome to www.jianghua.com" > /var/www/html/index.html [root@zhangjh ~]# firefox
3、个人用户主页功能
第1步:在httpd服务程序中,默认没有开启个人用户主页功能。编辑配置文件,然后在第17行的UserDir disabled参数前面加上井号(#),表示让httpd服务程序开启个人用户主页功能;同时再把第24行的UserDir public_html参数前面的井号(#)去掉(UserDir参数表示网站数据在用户家目录中的保存目录名称,即public_html目录)
[root@zhangjh ~]# vim /etc/httpd/conf.d/userdir.conf
第2步:在用户家目录中建立用于保存网站数据的目录及首页面文件。另外,还需要把家目录的权限修改为755,保证其他人也有权限读取里面的内容。
[root@zhangjh ~]# su - jianghua Last login: Mon May 21 13:47:07 CST 2018 on pts/1 [jianghua@zhangjh ~]$ mkdir public_html [jianghua@zhangjh ~]$ echo "This is jianghua website." > public_html/index.html [jianghua@zhangjh ~]$ chmod -Rf 755 /home/jianghua/
第3步:重新启动httpd服务程序,关闭SElinux,在浏览器的地址栏中输入网址,其格式为“网址/~用户名”
[root@zhangjh ~]# systemctl restart httpd [root@zhangjh ~]# setenforce 0
3.1、在网站中添加口令功能
第1步:先使用htpasswd命令生成密码数据库。-c参数表示第一次生成;后面再分别添加密码数据库的存放文件,以及验证要用到的用户名称(该用户不必是系统中已有的本地账户)。
[root@zhangjh ~]# htpasswd -c /etc/httpd/passwd jianghua New password: Re-type new password: Adding password for user jianghua
第2步:编辑个人用户主页功能的配置文件。
[root@zhangjh ~]# vim /etc/httpd/conf.d/userdir.conf
[root@zhangjh ~]# systemctl restart httpd
这时,当用户再想访问某个用户的个人网站时,就必须要输入账户和密码才能正常访问了
4、虚拟网站主机功能------->基于IP地址
修改IP地址并确保都能够ping通。
第1步:分别在/home/wwwroot中创建用于保存不同网站数据的3个目录,并向其中分别写入网站的首页文件。
[root@zhangjh ~]# mkdir -p /var/www/html/251 [root@zhangjh ~]# mkdir -p /var/www/html/252 [root@zhangjh ~]# mkdir -p /var/www/html/253 [root@zhangjh ~]# echo "IP:192.168.38.251" > /var/www/html/251/index.html [root@zhangjh ~]# echo "IP:192.168.38.252" > /var/www/html/252/index.html [root@zhangjh ~]# echo "IP:192.168.38.253" > /var/www/html/253/index.html
第2步:在httpd服务的配置文件中,分别追加写入三个基于IP地址的虚拟主机网站参数,然后保存并退出。
[root@zhangjh ~]# vim /etc/httpd/conf/httpd.conf
[root@zhangjh ~]# systemctl restart httpd
此时可以到浏览器中访问了
虚拟网站主机功能------->基于主机域名
第1步:手工定义IP地址与域名之间对应关系的配置文件,保存并退出后会立即生效。可以通过分别ping这些域名来验证域名是否已经成功解析为IP地址。
[root@zhangjh ~]# vim /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.38.251 www.jianghua.com bbs.jianghua.com cnn.jianghua.com
[root@zhangjh ~]# ping -c 4 -i 0.1 cnn.jianghua.com PING www.jianghua.com (192.168.38.251) 56(84) bytes of data. 64 bytes from www.jianghua.com (192.168.38.251): icmp_seq=1 ttl=64 time=2.06 ms 64 bytes from www.jianghua.com (192.168.38.251): icmp_seq=2 ttl=64 time=0.101 ms 64 bytes from www.jianghua.com (192.168.38.251): icmp_seq=3 ttl=64 time=0.092 ms 64 bytes from www.jianghua.com (192.168.38.251): icmp_seq=4 ttl=64 time=0.080 ms
第2步:分别在/var/www/html中创建用于保存不同网站数据的三个目录,并向其中分别写入网站的首页文件。
[root@zhangjh ~]# mkdir -p /var/www/html/www [root@zhangjh ~]# mkdir -p /var/www/html/bbs [root@zhangjh ~]# mkdir -p /var/www/html/cnn [root@zhangjh ~]# echo "www.jianghua.com" > /var/www/html/www/index.html [root@zhangjh ~]# echo "bbbs.jianghua.com" > /var/www/html/bbs/index.html [root@zhangjh ~]# echo "cnn.jianghua.com" > /var/www/html/cnn/index.html
第3步:在httpd服务的配置文件中,分别追加写入三个基于主机名的虚拟主机网站参数,然后保存并退出。
[root@zhangjh ~]# vim /etc/httpd/conf/httpd.conf
[root@zhangjh ~]# systemctl restart httpd
打开浏览器,查看效果:
虚拟网站主机功能------->基于端口号
第1步:分别在/var/www/html中创建用于保存不同网站数据的两个目录,并向其中分别写入网站的首页文件。
[root@zhangjh ~]# mkdir -p /var/www/html/6666 [root@zhangjh ~]# mkdir -p /var/www/html/8888 [root@zhangjh ~]# echo "prot:6666" > /var/www/html/6666/index.html [root@zhangjh ~]# echo "prot:8888" > /var/www/html/8888/index.html
第2步:在httpd服务配置文件的第43行和第44行分别添加用于监听6666和8888端口的参数。
[root@zhangjh ~]# vim /etc/httpd/conf/httpd.conf
第3步:在httpd服务的配置文件中,分别追加写入两个基于端口号的虚拟主机网站参数,然后保存并退出。
[root@zhangjh ~]# vim /etc/httpd/conf/httpd.conf
[root@zhangjh ~]# systemctl restart httpd
重启服务后,在浏览器以端口号查看: