WEB服务器搭建与配置
WEB服务简介
# 目前最主流的三个Web服务器是Apache、Nginx、 IIS。
- Web服务器一般指网站服务器,可以向浏览器等Web客户端提供文档,也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载。
- WEB服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务。
- 服务器是一种被动程序只有当Internet上运行其他计算机中的浏览器发出的请求时,服务器才会响应
WEB 服务协议
# WEB 服务应用层使用HTTP协议。
# HTML(标准通用标记语言下的一个应用)文档格式。--index.html
# 浏览器统一资源定位器(URL)。
# 为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS。为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。
# WWW 采用的是浏览器/服务器结构
#web服务器只能解析静态页面。 动态页面:只要和数据库进行连接的都属于动态页面,比如java写的代码,PHP的代码,python的代码。
#web服务器:apache (参考服务器配置、优化。静态并发量最高2000) nginx(tengine) IIS #端口全部为80!https为443端口
Apache服务的搭建与配置
Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。
Apache的主程序名叫httpd。
Apache安装配置
[root@localhost ~]# systemctl stop firewalld && systemctl disable firewalld # 永久关闭防火墙
[root@localhost ~]# setenforce 0
[root@localhost ~]# yum -y install httpd # 下载安装httpd
[root@localhost ~]# systemctl start httpd # 开启httpd服务
[root@localhost ~]# netstat -lntp | grep 80
tcp6 0 0 :::80 :::* LISTEN 3135/httpd
# 端口80.可以改
index.html:默认主页名称
默认发布网站的目录:/var/www/html
系统产生apache账户,家目录是:/var/www
apache目录介绍
apache的工作目录(基准目录)
conf 存储配置文件
conf.d 存储配置子文件
logs 存储日志
modules 存储模块
run 存储Pid文件,存放的pid号码。是主进程号
认识主配置文件
[root@localhost ~]# 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不使用.htaccess控制,all 允许
Require all granted # granted表示运行所有访问,denied表示拒绝所有访问
</Directory> # 容器结束
DirectoryIndex index.html # 定义主页文件,当访问到网站目录时如果有定义的 主页文件,网站会自动访问
访问控制
准备测试页面
[root@localhost ~]# echo 'test......' > /var/www/html/index.html #编写测试文件
访问控制测试
Apache默认允许所有主机可访问
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf # 编辑组配置文件
[root@localhost ~]# systemctl restart httpd # 修改配置文件后重启服务
Require all granted # 默认所有人可访问
[root@localhost ~]# curl -I 192.168.56.120
HTTP/1.1 200 OK
Date: Tue, 28 Feb 2023 12:49:16 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Tue, 28 Feb 2023 12:04:18 GMT
ETag: "c-5f5c1653028bb"
Accept-Ranges: bytes
Content-Length: 12
Content-Type: text/html; charset=UTF-8
[root@localhost ~]# curl 192.168.56.120
test......
只拒绝一部分客户端访问:
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf # 编辑组配置文件
[root@localhost ~]# systemctl restart httpd # 修改配置文件后重启服务
<RequireALL> # 需要添加此标签,否则不生效
Require not ip 192.168.56.110 # 拒绝链接的IP,多个空格隔开
</RequireALL>
[root@localhost ~]# curl -I 192.168.56.110
HTTP/1.1 403 Forbidden
Date: Thu, 02 Mar 2023 11:43:05 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 16 Oct 2014 13:20:58 GMT
ETag: "1321-5058a1e728280"
Accept-Ranges: bytes
Content-Length: 4897
Content-Type: text/html; charset=UTF-8
拒绝所有人连接
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
131<Directory "/var/www/html">
132 Options Indexes FollowSymLinks
133 ALLowOverride None
134 <RequireALL>
135 Require all denied136 </RequireALL>
137 </Directory>
[root@localhost ~]# systemctl resatrt httpd
[root@localhost ~]# curl -I 192.168.56.110
HTTP/1.1 403 Forbidden
Date: Thu, 02 Mar 2023 11:46:25 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 16 Oct 2014 13:20:58 GMT
ETag: "1321-5058a1e728280"
Accept-Ranges: bytes
Content-Length: 4897
Content-Type: text/html; charset=UTF-8
修改默认网站发布目录
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
119 DocumentRoot "/www" # 修改网站根目录为/www
131 <Directory "/www"> # 把这个也对应的修改为/www
[root@localhost ~]# mkdir /www
[root@localhost ~]# echo 'abc..def...ghj...' >> /www/index.html
[root@localhost ~]# cat /www/index.html
abc..def...ghj...
[root@localhost ~]# curl -I 192.168.56.110
HTTP/1.1 200 OK
Date: Thu, 02 Mar 2023 11:51:15 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 02 Mar 2023 11:48:57 GMT
ETag: "12-5f5e969f14d15"
Accept-Ranges: bytes
Content-Length: 18
Content-Type: text/html; charset=UTF-8
[root@localhost ~]# curl 192.168.56.110
abc..def...ghj...
虚拟主机
虚拟主机:多个网站在一台服务器上。web服务器都可以实现。
三种:基于域名 基于端口 基于Ip
基于域名
[root@localhost ~]# cd /etc/httpd/conf.d/
[root@localhost conf.d]# vim test.conf
<VirtualHost *:80> #指定虚拟主机端口,*代表监听本机所有ip,也可以指定ip
DocumentRoot /soso #指定发布网站目录,自己定义
ServerName www.soso666.com #指定域名,可以自己定义
<Directory "/soso/">AllowOverride None #设置目录的特性,如地址重写Require all granted #允许所有人访问
</Directory>
</VirtualHost><VirtualHost *:80>
DocumentRoot /soho
ServerName test.soso666.com
<Directory "/soho/">AllowOverride NoneRequire all granted
</Directory>
</VirtualHost>[root@localhost ~]# mkdir /soso #创建发布目录
[root@localhost ~]# mkdir /soho
[root@localhost ~]# echo qianfen > /soso/index.html #创建测试页面
[root@localhost ~]# echo qfedu > /soho/index.html
[root@localhost ~]# systemctl restart httpd
[root@localhost ~]# vim /etc/hosts
测试访问
[root@localhost ~]# curl -I 192.168.56.110
HTTP/1.1 200 OK
Date: Thu, 02 Mar 2023 12:48:51 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 02 Mar 2023 12:45:08 GMT
ETag: "8-5f5ea32eb06a2"
Accept-Ranges: bytes
Content-Length: 8
Content-Type: text/html; charset=UTF-8[root@localhost ~]# curl -I www.soso666.com
HTTP/1.1 200 OK
Date: Thu, 02 Mar 2023 12:49:07 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 02 Mar 2023 12:45:08 GMT
ETag: "8-5f5ea32eb06a2"
Accept-Ranges: bytes
Content-Length: 8
Content-Type: text/html; charset=UTF-8[root@localhost ~]# curl -I test.soso666.com
HTTP/1.1 200 OK
Date: Thu, 02 Mar 2023 12:49:24 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 02 Mar 2023 12:45:17 GMT
ETag: "6-5f5ea33706f38"
Accept-Ranges: bytes
Content-Length: 6
Content-Type: text/html; charset=UTF-8
基于端口
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
[root@qfedu.com ~]# vim /etc/httpd/conf.d/test.conf
<VirtualHost *:80>DocumentRoot /sosoServerName www.soso666.com
<Directory "/soso/">AllowOverride NoneRequire all granted
</Directory>
</VirtualHost><VirtualHost *:81> #修改端口DocumentRoot /sohoServerName test.soso666.com
<Directory "/soho/">AllowOverride NoneRequire all granted
</Directory>
</VirtualHost>
[root@qfedu.com ~]# systemctl restart httpd
测试访问:
[root@localhost ~]# curl -I www.soso666.com
HTTP/1.1 200 OK
Date: Thu, 02 Mar 2023 12:54:06 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 02 Mar 2023 12:45:08 GMT
ETag: "8-5f5ea32eb06a2"
Accept-Ranges: bytes
Content-Length: 8
Content-Type: text/html; charset=UTF-8[root@localhost ~]# curl -I www.soso666.com:81
HTTP/1.1 200 OK
Date: Thu, 02 Mar 2023 12:54:23 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 02 Mar 2023 12:45:17 GMT
ETag: "6-5f5ea33706f38"
Accept-Ranges: bytes
Content-Length: 6
Content-Type: text/html; charset=UTF-8
基于IP
[root@localhost ~]# ifconfig ens33:0 192.168.56.111 # 添加一个临时IP
[root@localhost ~]# vim /etc/httpd/conf.d/test.conf
[root@localhost ~]# systemctl restart httpd
测试访问:
[root@localhost ~]# curl -I 192.168.56.111
HTTP/1.1 200 OK
Date: Thu, 02 Mar 2023 13:03:41 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 02 Mar 2023 11:48:57 GMT
ETag: "12-5f5e969f14d15"
Accept-Ranges: bytes
Content-Length: 18
Content-Type: text/html; charset=UTF-8[root@localhost ~]# curl -I 192.168.56.110
HTTP/1.1 200 OK
Date: Thu, 02 Mar 2023 13:03:45 GMT
Server: Apache/2.4.6 (CentOS)
Last-Modified: Thu, 02 Mar 2023 12:45:08 GMT
ETag: "8-5f5ea32eb06a2"
Accept-Ranges: bytes
Content-Length: 8
Content-Type: text/html; charset=UTF-8
WEB服务器搭建与配置相关推荐
- Linux Java Web 服务器搭建之tomcat安装
Linux Java Web 服务器搭建之tomcat安装 一 Tomcat 简介 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是 ...
- 网站服务器怎么组件,网站服务器搭建与配置详解!
原标题:网站服务器搭建与配置详解! 服务器大家经常会听说,但是可能大家对个中概念还有些不明白,这里跟大家说说网站服务器的搭建与配置. 网站服务器概念 网站服务器是网络应用的基础硬件设施,简言之即存放网 ...
- 【CentOS Linux 7】实验6【web服务器搭建与管理】
Linux系统及应用---调研报告 [Linux CentOS 7]实验1[VMware安装.新建虚拟机:63个基础命令运行结果图] [Linux CentOS 7]实验2[Shell编程及应用] [ ...
- linux上的web服务器搭建
Web服务器 基础知识篇 1) https:基于openssl的http http:hypertext transfer protocol 超文本传输协议 传输文本信息 80/tcp端口 html: ...
- 面向新手的Web服务器搭建(一)——IIS的搭建
很多童鞋说自己是做移动开发的,想挂个简单的Web API,可是服务器又不会搭,这样一来测试就成了问题.看看网上的教程,发现略难懂,而且大多是一个转一个,没价值,所以干脆写几篇文章讲讲简单的Web服务器 ...
- Linux CentOS 7 Web服务器搭建和设置
一. Web服务器搭建和设置(共25分)(CentOS 7) 请完成以下项目要求并给出实现步骤和测试界面图. 1. 安装Web服务器所需软件,设置服务器的IP为192.168.1.2 . 2. 在IP ...
- 关于windows server 2003 web服务器搭建详解(内涵步骤)
关于windows server 2003 web服务器搭建 实验环境:windows server 2003(设置两个网卡),win 7或xp系统,都在同一网段下测试 我的服务器和客户机均为NAT模 ...
- [Linux CentOS7] Web服务器搭建和设置
[Linux CentOS7] Web服务器搭建和设置 题目 基本网络配置 问题1 问题2 问题3 问题4 问题5 环境: VMware workstation14 CentOS 7 题目 请完成以下 ...
- 思科web服务器怎么配置文件,思科web服务器域名哪里配置
思科web服务器域名哪里配置 内容精选 换一换 防护域名开启WEB基础防护之后,访问网站如果出现500,502,504等报错,并且显示Web应用防火墙和网站连接失败,如图1所示.可能的原因比较多,如防 ...
最新文章
- 国内最牛逼的笔记,不接受反驳!!
- android 保存崩溃信息,Android保存每次运行崩溃报告的日志
- 自己搭建一个k8s环境
- 数据结构与算法--有序数组中找出和为s的两个数字
- 论文浅尝 | 虚拟知识图谱:软件系统和应用案例综述
- Rabbit MQ 配置
- shp设置utf8格式_shapefile与字符集编码设置
- mysql常用命令案例
- 数据:Purpose以太坊ETF的持仓量达到4万枚ETH
- SpringCloud学习指南【更新】
- 云服务器的主要用途是什么?
- 天气实况、天气预报、免费天气接口、空气质量各类天气数据、生活指数、气候数据雷达云图等值面...
- 2018年秋季学期课表
- Ubuntu 14.04 引导修复(Boot Repair)(双系统修复一)
- 借助python用Tushare查询股票价格并存入Mysql数据库中
- cala开发编程入门Hello World示例
- 美国本土四十八个州府48个州府所在城市的TSP旅行商回路17110km
- XML学习笔记——XSL
- 手把手教你作者python机器人,自己训练一个机器人助手
- 关于单相全桥不控整流电路的一点思考(一):阻性负载下的二极管导通问题