apache

apache的基础信息

主配置目录 				/etc/httpd/conf
主配置文件 				/etc/httpd/conf/httpd.conf
子配置目录 				/etc/httpd/conf.d/
子配置文件 				/etc/httpd/conf.d/*.conf
默认发布目录 				/var/www/html
默认发布文件 				index.html
默认端口 				80
默认安全上下文 			httpd_sys_content_t
程序开启默认用户 			apache
apache日志 				/etc/httpd/logs/*

将selinux打开为enforcing,再reboot

apache服务,支持超文本传输的软件
selinux会影响apache

在ip为172.25.254.170的这台虚拟机上搭建apache-web服务器

yum install httpd -y 安装apache软件

在这里插入图片描述

在这里插入图片描述

netstat -antlupe | grep httpd(查看httpd的服务端口80是否开启)

在这里插入图片描述

firewall-cmd --list-all							##列出火墙信息
firewall-cmd --permanent --add-service=http		##在火墙里面添加http服务   
firewall-cmd --reload							##重新加载使添加生效

在这里插入图片描述
yum install httpd-manual ##apache的手册

在这里插入图片描述

cd /var/www/html(httpd安装了以后才会有这个共享目录)
ls
cd /etc/httpd/conf((主配置目录)
ls 
cd ..(返回上一级目录)
ls
cd conf.d(子配置目录)
ls

在这里插入图片描述

rpm -qc httpd查看主配置文件

在这里插入图片描述
rpm -qd httpd
在这里插入图片描述

rpm -ql httpd查看主配置目录

在这里插入图片描述

测试 http://172.25.254.170

在这里插入图片描述

 /var/www/html			##apache的/目录,默认发布目录
 /var/www/html/index.html	##apache的默认发布文件
 vim /var/www/html/index.html
  <h1> hello westos </h1>
` :wq

在这里插入图片描述

在这里插入图片描述

apache服务的相关设置

先systemctl status httpd查看apache是否开启
再firewall-cmd --list-all查看火墙是否允许apache服务
在浏览器里面输入172.25.254.170查看是否能访问apache共享出来的东西

在这里插入图片描述
在这里插入图片描述

(1)修改httpd服务的端口

vim /etc/httpd/conf/httpd.conf编辑httpd的主配置文件
搜Listen 将端口由80改为8080默认使用端口80
systemctl restart httpd重启才会生效
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

netstat -antlupe | grep httpd 查看端口是否改为8080查看端口是否修改成功

在这里插入图片描述

firewall-cmd --permanent --add-port=8080/tcp在火墙里面添加8080端口
firewall-cmd --reload加载使其生效
输入172.25.254.111:8080

在这里插入图片描述

输入172.25.254.170:8080

在这里插入图片描述

(2)修改默认发布文件

vim /etc/httpd/conf/httpd.conf
将端口改为80
systemctl restart httpd

在这里插入图片描述

cd /var/www/html 默认发布目录
ls
vim test.html在默认发布目录下面再编写一个文件,看会不会被默认共享
<h1>test'page</h1>

在这里插入图片描述

在这里插入图片描述

直接172.25.254.170访问的是index.html在这里插入图片描述

输入172.25.254.170/test.html 才可以访问test.html

在这里插入图片描述

vim /etc/httpd/conf/httpd.conf
搜index.html
改为test.html将默认发布文件由index.html改为test.html
systemctl restart httpd

输入172.25.254.170直接看到test.html的内容

vim /etc/httpd/conf/httpd.conf
写入index.html test.html将二者都写入
systemctl restart httpd

(3)修改默认发布目录

cd /var/www/html 默认发布目录
mkdir -p /meng/html新建一个目录,让它成为默认发布目录
vim /meng/html/index.html编写默认发布文件



vim /etc/httpd/conf/httpd.conf
搜/Doc找默认发布目录那一行
复制一行,注释掉原来的,防止自己手写把格式写错
/var/www/html----->/meng/html将默认发布目录改为/meng/html
systemctl restart httpd重启服务才会生效

apache内部的访问控制

cd /etc/httpd/conf.d/
ls
vim vhost.conf编辑虚拟主机的配置文件
systemctl restart httpd

1)针对主机ip的访问控制

基于ip的访问控制,允许哪个ip可以访问,哪个ip不可以访问
allow,deny会有一个读取的先后顺序,后面的会覆盖前面的,相当于设置访问apache服务器的黑白名单

<Directory "/var/www/html/test">
Order Allow,Deny		##列表读取顺序,后读取的列表会覆盖前面列表内容的重复部分
Allow from All
Deny from 172.25.254.170
</Directory>相当于黑名单


<Directory "/var/www/html/test">
Order Deny,Allow		##列表读取顺序,后读取的列表会覆盖前面列表内容的重复部分
Allow from 172.25.254.111
Deny from All 
</Directory>  相当于白名单

2)用户方式的访问控制

先建立用户认证文件
cd /etc/httpd/在该目录下面
ls
htpasswd --help查看参数


htpasswd -cm .apache_auth admin建立admin用户
输入密码
cat .apache_auth查看该文件
htpasswd -cm .apache_auth lee建立lee用户,-c会重新建立用户认证文件,覆盖之前的admin用户
输入密码会覆盖之前的用户
htpasswd -m .apache_auth admin(追加用户在文件里面不需要-c)
输入密码
cat .apache_auth
htpasswd -cm	/etc/httpd/userpass	admin建立admin用户
htpasswd -m 	/etc/httpd/userpass	admin1追加admin1用户



cd /etc/httpd/conf.d/
ls
vim vhost.conf

<Directory "/var/www/html">
AuthUserFile /etc/httpd/.apache_auth 认证文件类型
AuthType basic认证类型,基本
AuthName "Please input username and password"认证名字
#Require user admin 只允许admin用户通过认证访问共享目录
#Require valid-user允许所有用户访问
以上两个二选一
</Directory>

apache支持的语言(html php cgi wsgi)
html php perl python jsp asp

1)php语言的设置

cd /var/www/html切换到默认发布目录下
ls 查看一下默认发布文件的语言类型,基本是html在这里插入图片描述
在这里插入图片描述

编写一个php语言的默认发布文件
vim index.php

<?php
   phpinfo();
?>

在这里插入图片描述
vim /etc/httpd/conf/httpd.conf

index.php加入这个默认发布文件

在这里插入图片描述

systemctl restart httpd

cd /etc/httpd/conf.d/
ls
在这里插入图片描述
在浏览器里面输入172.25.254.170在这里插入图片描述就可以看到php的表格了

https加密访问

HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer 或 Hypertext Transfer Protocol Secure,超文本传输安全协议)
是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL
它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。
https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。
这个系统的最初研发由网景公司(Netscape)进行,并内置于其浏览器Netscape Navigator中,提供了身份验证与加密通讯方法。
现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。

	
TTPS和HTTP的区别
超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送内容,不提供任何方式的数据加密
如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此HTTP协议不适合传输一些敏感信息,比如信用卡号、密码等
为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS。
为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。
HTTPS和HTTP的区别主要为以下四点:
一、https协议需要到ca申请证书,一般免费证书很少,需要交费。
二、http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。
三、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
四、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。



客户端访问服务器的时候客户端那边是不安全的,虽然服务端自己很安全,但不能保证客户端访问服务端的时候客户端是安全的,因此可能会造成服务端不安全
https协议是加密访问
在能上网的真机里面输入www.baidu.com,发现会自动跳转到https://www.baidu.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值