curl -I +域名|ip ##获取域名或ip的header信息,包括HTTP返回状态码,server类型,文本类型,缓存时间等。
1.anpache的安装
yum install httpd -y
systemctl start httpd
systemctl stop firewalld
systemctl enable httpd
systemctl disable firewalld
apache信息
1.apache的默认发布文件
index.html
2.apache的配置文件
/etc/httpd/conf/httpd.conf
/etc/httpd/conf.d/*.conf
3.apache的默认发布目录
/var/www/html
4.apache的默认端口 80
2. apache的基本配置
1.修改默认发布文件
1> vim /etc/httpd/conf/httpd.conf
164 DirectoryIndex westos.html (/var/www/html/westos.html)
2> systemctl restart httpd
2.修改默认发布目录
当selinux是disable状态
1> vim /etc/httpd/conf/httpd.conf
120 DocumentRoot "/westos/html"
<Directory "/westos/html">
Require all granted
</Directory>
2> systemctl restart httpd
当selinux是enforcing状态
1> vim /etc/httpd/conf/httpd.conf
120 DocumentRoot "/westos/html"
<Directory "/westos/html">
Require all granted ##允许所有人访问
</Directory>
2> systemctl restart httpd
3> semanage fcontext -a -t httpd_sys_content_t ‘/westos(/.*)?’ ##修改安全上下文
4> restorecon -RvvF /westos
修改完成重启服务,可在浏览器访问。
3.apache的访问控制
设定ip的访问
vim /etc/httpd/conf/httpd.conf
120 <Directory "/westos/html"> ##允许所有人访问/westos/html目录但是拒绝250主机
Order Allow,Deny ##控制顺序,先读Allow文件再读Deny文件
Allow from All
Deny from 172.25.254.250
</Directory>
120 <Directory "/westos/html"> ##只允许250主机访问html目录
Order Deny,Allow
Allow from 172.25.254.250
Deny from All
</Directory>
设定用户的访问
1> htpasswd -mc /etc/httpd/conf/userfile admin ##创建认证文件
New password:
Re-type new password:
当再次添加用户时 :
htpassword -m
2> vim /etc/httpd/conf/httpd.conf
<Directory "/westos/html">
AuthUserFile /etc/httpd/conf/userfile ##用户认证文件
AuthName "Please input your name and password"##用户认证提示信息
AuthType basic ##认证类型
Require valid-user ##认证用户,认证文件中所有用户都可以通过
[Require user admin##只允许认证文件中admin用户访问,二写一]
</Directory>
访问时需要密码认证,admin用户成功登陆
4.apache的虚拟主机
1.定义
可以让我们的一台apache服务器发布多个默认网页,在被访问不同域名的时候显示不同的主页
2.建立测试页
1> mkdir /var/www/westos/news.westos.com -p
mkdir /var/www/westos/game.westos.com -p
2> echo “news.westos.com” >/var/www/westos/news.westos.com/index.html
echo “game.westos.com” >/var/www/westos/game.westos.com/index.html
3.配置
1> vim /etc/httpd/conf.d/default.conf ##未指定域名的访问都访问default
<Virtualhost_default_:80> ##虚拟主机开启的端口
DocumentRoot "/westos/html" ##虚拟主机的默认发布目录
CustomLog "logs/default.log" combined ##虚拟主机日志
</Virtualhost>
2> vim /etc/httpd/conf.d/news.conf ##指定域名news.westos.com的访问到指定默认发布目录中
<Virtualhost *:80>
ServerName news.westos.com
DocumentRoot /var/www/westos/news.westos.com
CustomLog "logs/news.log" combined
</Virtualhost>
<Directory "/var/www/westos/news.westos.com"> ##默认发布目录的访问授权
Require all granted
</Directory>
3> vim /etc/httpd/conf.d/game.conf ##指定域名game.westos.com的访问到指定默认发布目录中
<Virtualhost *:80>
ServerName game.westos.com
DocumentRoot /var/www/westos/game.westos.com
CustomLog "logs/game.log" combined
</Virtualhost>
<Directory "/var/www/westos/game.westos.com"> ##默认发布目录的访问授权
Require all granted
</Directory>
4.测试
在浏览器所在主机中修改hosts
vim /etc/hosts
nameserver 172.25.254.229
systemctl restart network
在浏览器访问:
www.westos.com ,在登陆时需要用户认证是因为之前的设置
news.westos.com
game.westos.com