linux系统web服务以及apache介绍

web服务

WEB服务

WEB服务简介

shell 复制代码
目前最主流的三个Web服务器是Apache、Nginx、 IIS。
- WEB服务器一般指网站服务器,可以向浏览器等Web客户端提供网站的访问,让全世界浏览。
- WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务。
- WEB服务器是一种被动程序只有当Internet上运行其他计算机中的浏览器发出的请求时,服务器才会响应
- WEB服务端,被动响应

WEB 服务协议

ini 复制代码
WEB 服务应用层使用HTTP协议。
HTML(标准通用标记语言)格式的文件。
浏览器通过统一资源定位符(URL)去访问web服务。	URI统一资源标识符
为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS。为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。
WEB服务采用的是浏览器/服务器结构
shell 复制代码
web服务器只能解析静态页面。 
动态页面:只要和数据库进行连接的都属于动态页面
shell 复制代码
web服务器:apache nginx IIS     //默认http端口全部为80,https为443端口
shell 复制代码
前端页面:静态元素: .html .img js css swf 配合:apache、nginx.
后端页面:动态元素:根据不同的开发语言: .php .jsp .py  配合:java、php、python

专门解析php代码的web中间件(web容器)--php-fpm端口9000
专门解析java代码的web中间件--tomcat(8080).
专门解析python代码的web中间件 ---uwsgi(5000)

SQL数据库:mysql、mariadb

Apache

Apache 介绍

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是目前最流行的Web服务器端软件之一。

shell 复制代码
Apache的主程序名叫httpd。

apache安装

shell 复制代码
systemctl stop firewalld && systemctl disable firewalld   //关闭防火墙
setenforce 0            //关闭selinux
yum install -y httpd    //安装httpd
systemctl start httpd   //启动httpd
shell 复制代码
index.html:默认访问网站的主页名称
默认发布网站的目录:/var/www/html

apache目录介绍

shell 复制代码
apache的工作目录:/etc/httpd/
conf   存储配置文件
conf.d 存储配置子文件
logs   存储日志 
modules 存储模块
run    存储Pid文件,存放的pid号码。是主进程号
shell 复制代码
sed -i.bak '/#.*/d;/^$/d' 文件               //删除文件所有的注释和空行

认识主配置文件:
vim /etc/httpd/conf/httpd.conf      //编辑主配置文件
ServerRoot "/etc/httpd"             //定义工作目录
Listen 80                           //监听端口
Listen 192.168.2.8:80 指定监听的本地网卡 可以修改
User apache    					    //子进程的用户,有可能被人改称www账户
Group apache   						//子进程的组
ServerAdmin root@localhost  		//设置管理员邮件地址
DocumentRoot "/var/www/html"        //发布网站的默认目录,想改改这里。
IncludeOptional conf.d/*.conf       //包含conf.d目录下的所有*.conf配置文件

设置DocumentRoot指定目录的属性:
<Directory "/var/www/html">   	 //网站容器开始标识
Options Indexes FollowSymLinks   //找不到主页时,链接到网站目录以外,如测试页面
AllowOverride None               //对网站设置特殊属性:none不设置特殊属性,all允许
Require all granted              //granted表示允许所有人访问,denied表示拒绝所有人访问
</Directory>    				 //容器结束
DirectoryIndex index.html      	 //定义主页文件,会自动访问该文件。

访问控制

复制代码
vim /etc/httpd/conf/httpd.conf     //httpd主配置文件

<RequireALL>
Require all granted        //所有人允许
</RequireAll>

<RequireALL>
Require all deined         //所有人禁止
</RequireAll>

<RequireALL>
Require not ip 192.168.116.1  //禁止一部分人
Require all granted
</RequireAll>

<RequireALL>
Require ip 192.168.116.1    //允许一部分人
</RequireAll>

虚拟主机

复制代码
虚拟主机:将多个网站放在一台服务器上。web服务器都可以实现。

基于ip

复制代码
cd /etc/httpd/conf.d/    //进入httpd子配置文件

创建以.conf为结尾的文件

<VirtualHost IP地址:80>           //指定虚拟主机ip,更改ip
DocumentRoot /发布页面地址     //指定发布网站目录,自己定义
ServerName 域名  //指定域名,可以自己定义
<Directory "/发布页面地址">
AllowOverride None      //设置目录的特性,不设置目录的特性
Require all granted     //允许所有人访问
</Directory>
</VirtualHost>

基于域名

复制代码
cd /etc/httpd/conf.d/    //进入httpd子配置文件

创建以.conf为结尾的文件

<VirtualHost *:80>           //指定虚拟主机端口,*代表监听本机所有ip,也可以指定ip
DocumentRoot /发布页面地址     //指定发布网站目录,自己定义
ServerName 域名              //指定域名,可以自己定义
<Directory "/发布页面地址">
AllowOverride None      //设置目录的特性,不设置目录的特性
Require all granted     //允许所有人访问
</Directory>
</VirtualHost>

基于端口

复制代码
cd /etc/httpd/conf.d/      //进入httpd子配置文件

创建以.conf为结尾的文件

<VirtualHost *:80>           //指定虚拟主机端口,更改端口
DocumentRoot /发布页面地址     //指定发布网站目录,自己定义
ServerName 域名  //指定域名,可以自己定义
<Directory "/发布页面地址">
AllowOverride None      //设置目录的特性,不设置目录的特性
Require all granted     //允许所有人访问
</Directory>
</VirtualHost>

临时添加ip

复制代码
ip a a ip/24 dev 网卡名称    //临时添加ip

ip a d ip/24 dev 网卡名称   //删除临时ip
相关推荐
c++逐梦人6 小时前
Linux基础IO
linux·操作系统·io
blueSatchel6 小时前
U-Boot载入到DDR过程的代码分析
linux·开发语言·u-boot
sure2826 小时前
React Native应用中使用sqlite数据库以及音乐应用中的实际应用
前端·react native
CHU7290356 小时前
扭蛋机盲盒小程序前端功能设计解析:打造趣味与惊喜并存的消费体验
前端·小程序
专注VB编程开发20年6 小时前
vb.net datatable新增数据时改用数组缓存
java·linux·windows
前端布道师6 小时前
Web响应式:列表自适应布局
前端
ZeroTaboo6 小时前
rmx:给 Windows 换一个能用的删除
前端·后端
李剑一6 小时前
Vue实现大屏获取当前所处城市及当地天气(纯免费)
前端
_果果然7 小时前
这 7 个免费 Lottie 动画网站,帮你省下一个设计师的工资
前端
石去皿7 小时前
【嵌入式就业10】Linux内核深度解析:从启动流程到驱动框架的工业级实践
linux·运维·服务器