Web网站服务器

目录

一、什么是Apache?

二、虚拟目录是什么?

三、Apcahe相关配置文件

四、httpd.conf主配置文件的常用配置参数

五、Web网站配置案例

5.1搭建基于用户的个人主页网站

5.2、配置虚拟目录

5.3、配置虚拟主机

5.3.1搭建两个基于IP地址的虚拟主机

5.3.2搭建两个基于域名的站点

5.3.3搭建两个基于端口号的站点

5.4、账号认证访问网站

5.5、搭建https安全网站


一、什么是Apache?

Apache是开放源代码的Web服务器软件,通俗将就是一个用于搭建网站的服务软件。类似的还有微软的IIS、IBM webSphere、Tomcat。

有两个版本:

  • http:超文本传输协议,通过线路以明文形式发送,默认使用80端口/TCP。
  • https:经TLS/SSL安全加密的超文本传输协议,默认使用443端口/TCP。

 

二、虚拟目录是什么?

虚拟目录是一个位于Apache服务器网页文件主目录之外的目录。每个虚拟目录对应一个真实的存放网页文件的物理路径目录,用户通过访问虚拟目录的名字就可以访问到真实目录下的网页文件,而无需在输入真实的网页文件路径。可以针对虚拟目录设置不同的访问权限。

 

三、Apcahe相关配置文件

/etc/httpd    ----------Apache服务主要数据文件存放的根目录

/etc/httpd/conf/httpd.conf -------主配置文件

/etc/httpd/conf.d  --------虚拟主机的配置文件所在目录

/etc/httpd/conf.d/userdir.conf----------个人web站点的配置文件

/etc/httpd/logs--------日志文件目录

/var/www/html--------用户浏览网站时网页文件默认所在目录

四、httpd.conf主配置文件的常用配置参数

1、ServerName  -----网站服务器的域名和端口号,服务器根据用户提供的此值来确定是否访问的是自己。

2、ServerRoot-------设置服务器的根目录,用于存储web服务器的匹配数据文件。

3、Listen-------监听的端口号

4、DocumentRoot-------默认网站提供html文档的根目录。

5、Directory-------用于设置web服务器文件目录的访问权限和访问方式

6、DirectoryIndex------指定网站首页的默认文件

7、VirtualHost-------搭建基于虚拟主机多个站点时所用的配置参数设置

8、ServerAdmin-------设置web服务器管理员邮箱地址,当用户访问网站出错时将显示管理员邮箱地址

9、Time out--------设置web网站接收或发送数据时的超时时间。

10、Error Log-------指定Apcahe服务器错误日志存放的文件路径

11、Custom Log-----指定Apache服务器访问日志文件路径

12、Include-------指定所要包含的其它配置文件所在路径

五、Web网站配置案例

5.1搭建基于用户的个人主页网站

*服务端和客户端需保持网络互通,客户端正确解析服务器的域名所对应IP地址

Server

1、安装httpd服务软件

2、创建用于个人主页的账户

3、进入用户家目录创建一个用于存储个人网页文件的主目录public_html,并允许其它人有执行访问权限

4、在用户个人主目录内创建一个用于用户访问的网页文件

5、修改httpd个人站点配置文件

6、防火墙放行httpd服务,设置selinux布尔值的相应参数来允许网络用户访问个人用户的家目录。

 

7、开启httpd服务,并设置开机自启

 

Client端:

8、访问服务器个人主页进行测试

5.2、配置虚拟目录

描述:创建一个名为/myweb的虚拟目录其对应的真实目录物理路径为/usr/web。

Server端:

1、创建/usr/web真实目录和其用户访问所需的网页文件。

2、修改/etc/httpd/conf/httpd.conf主配置文件相关参数。

3、防火墙放行http服务,并修改虚拟目录所对应的物理目录的安全上下文。

4、重启httpd服务使其配置立即生效

Client端:

5、使用客户端访问虚拟目录进行测试

5.3、配置虚拟主机

概述:虚拟主机允许在一台web服务器上搭建多个web站点,用户访问时各web站点可以通过IP地址、域名或端口号来进行区分访问不同站点。

5.3.1搭建两个基于IP地址的虚拟主机

Server端:

1、给网卡添加两个IPv4的地址,用于后面分别绑定两个站点做区分。

2、分别创建两个站点的网页文件主目录和其要访问的网页文件。

3、在httpd的主配置文件/etc/httpd/conf/httpd.conf中添加虚拟主机相关参数并赋值。

4、防火墙放行http服务,保证创建的网页文件主目录selinux的安全上下文正确。

5、重启httpd服务使其配置文件立即生效。

6、客户端通过基于不同的IP地址访问网站进行测试。

5.3.2搭建两个基于域名的站点

Server端:

1、创建两个站点所需的网页文件和其主目录。

2、在主配置文件/etc/httpd/conf/httpd.conf 中添加虚拟主机一下相关参数。

3、防护墙放行http服务,保证所创建的两个站点目录文件的安全上下文正确。

4、重启httpd服务使配置文件立即生效。

Client端:

6、保证客户端正确配置DNS所对应网站使用的IP地址解析,此处客户端使用本地解析。

7、客户端分别访问web1.shanyue.com和web2.shanyue.com进行站点测试。

5.3.3搭建两个基于端口号的站点

Server端:

1、创建两个用于测试的站点所使用的网页文件和其所在的主目录

2、修改/etc/httpd/conf/httpd.conf 主配置文件中的虚拟主机所使用的相关参数,并设置其http服务监听的端口号。

3、防火墙放行两个网站绑定的8080和8081端口。

4、由于修改了http服务默认监听的端口号,此时selinux会认为新修改的端口号不是http服务规定所使用的端口号。因此需要修改新设置的端口号标签类型,使http服务认为此新设置的端口号是合法的。否则修改配置文件重启http服务时会报配置文件语法错误。

*注意:此处由于8081和8082端已被占用定义无法对其进行删除重新添加,但此过程是对的,可以换用其它监听端口测试。此处实验就临时把selinux安全策略设置为允许宽松模式,来跳过http的站点监听端口检测语法检测。

5、重启http服务使其重读http的配置文件,让配置立即生效。

Client端:

6、在客户端分别使用不同的端口号访问刚搭建的站点看其是否搭建成功。

5.4、账号认证访问网站

Server端:

1、创建客户端访问网站时,所需输入的账户和其密码。

2、修改账户密码文件的selinux标签属性。

说明:用户访问网站默认使用web服务器账户是apache账户、因此需保证apache用户有访问此密码文件路径目录的r读和x访问权限,依此来验证客户端访问网站输入的密码是否正确(密码文件可以保存到非站点物理目录下)。

3、开启网站的用户访问密码认证。

4、重启httpd服务使其配置立即生效

Client端:

1、访问web服务器开启用户账户认证的站点,进行测试。

5.5、搭建https安全网站

注意:经TLS/SSL安全加密的超文本传输协议,默认情况下使用端口443/TCP

Server端:

1、安装httpd服务软件、和用于https加密的mod_ssl软件。

2、搭建CA服务器,用于为web站点签发证书。首先创建CA服务所需的目录结构。

3、为CA服务器和web服务器生成一把私钥。

4、修改CA服务配置文件/etc/pki/tls/openssl.cnf参数,允许向CA服务器申请证书的客户可以任意定义申请证书的相关参数。

6、为CA服务机构创建自签的根证书。以后访问此机构颁发的证书网站的客户端可以通过在本地导入CA根证书来信任网站证书。

7、为要搭建的web站点向CA申请数字证书。首先在web服务器上创建证书申请模板文件。然后在发送给CA服务器,由于本实验CA和web服务在一台服务器上,因此模板无需发送给CA服务器。

8、创建CA服务器颁发证书所需文件

9、CA签发web站点提交的证书申请

10、修改https的/etc/httpd/conf.d/ssl.conf 主配置文件相关参数来使将搭建的网站绑定从CA哪里获得的证书,并指定web站点用于解密的私钥文件。

11、把证书文件、秘钥文件和根CA文件分别拷贝到ssl.conf配置文件里的对应路径下面。

12、防火墙放行https服务

13、在httpd服务默认的网页主目录下创建个用于客户端https访问的网页文件。

14、重启httpd服务使其配置文件立即生效

Client端:

1、正确配置web网站域名的DNS解析,此实验采用DNS本地解析。域名最好使用CA颁发给Web服务器证书中的通用域名,以此来让客户端正确解析网站的证书。

2、将网站证书颁发机构CA的根证书内容导入到linux受信任的根证书颁发机构区域文件内来信任站点证书(说明:Linux系统中大部分浏览工具的信任根CA都在此文件内指定。但对于firefox浏览器需要另外导入根CA证书)。

3、客户端以https的方式访问web网站进行测试。通过curl命令可以正常访问站点)。

4、客户端通过firefox图形化浏览器访问https站点进行测试。

5、firefox浏览器导入证书颁发机构的根CA,以此来信任访问的网站出示的证书。

firefox导入根CA证书成功,在次访问https站点不在报错。

@声明:“山月润无声”博主知识水平有限,以上文章如有不妥之处,欢迎广大IT爱好者指正,小弟定当虚心受教!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/113826.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

执行公开网数据采集-技术人员撤退

首先逼逼,此贴仅为秀肌肉,技术人员想学习的话可以绕道了 打开控制台,看cookie,ST,某数 第一个请求412,看VM 然后就是替换js,hook,之类的,扣代码流程,此处省…

无涯教程-Android - Intents/Filters

Android Intent 是要执行的操作的抽象描述。它可以与 startActivity 一起启动Activity,将 broadcastIntent 发送给任何BroadcastReceiver组件,并与 startService(Intent)或 bindService(Intent,ServiceConnection,int)与后台服务进…

游戏报错xinput1_3.dll丢失的解决方法,xinput1_3.dll修复步骤

今天,我将和大家探讨一个与我们日常生活息息相关的话题——电脑丢失xinput1_3.dll文件怎么办。作为一位老师,我深知电脑技术对于现代人的重要性,而xinput1_3.dll文件的丢失则是许多电脑用户在游戏、办公等方面遇到的问题。因此,我…

Apipost:为什么是开发者首选的API调试工具

文章目录 前言正文接口调试接口公共参数、环境全局参数的使用快速生成并导出接口文档研发协作接口压测和自动化测试结论 前言 Apipost是一款支持 RESTful API、SOAP API、GraphQL API等多种API类型,支持 HTTPS、WebSocket、gRPC多种通信协议的API调试工具。除此之外…

华为OD机试 - 硬件产品销售方案 - 回溯(Java 2023 B卷 200分)

目录 专栏导读一、题目描述二、输入描述三、输出描述四、补充说明五、解题思路六、Java算法源码七、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(…

EasyAVFilter的初衷:把ffmpeg.c当做SDK来用,而不是当做EXE来用

之前我们做一个视频点播的功能,大概的流程就是将上传上来的各种格式的视频,用FFmpeg统一进行一次转码,如果probe到视频的编码格式是H.264就调用-vcodec copy,如果probe到视频的编码格式不是H.264就调用-vcodec libx264&#xff0c…

使用delphi XE10.3.2 开发linux 上的Daemon

delphi 10.3.2支持linux, 而且官方只是支持命令行编程,目地就是做linux 服务器端的开发。 既然是做linux服务器端的开发,那么普通的命令行运行程序,然后等待开一个黑窗口的方式就 太low了(目前就有个别语言大咖,经常在Windows 上开个黑窗口,看起来非常恶心),那么如果…

网站常见安全漏洞 | 青训营

Powered by:NEFU AB-IN 文章目录 网站常见安全漏洞 | 青训营 网站基本组成及漏洞定义服务端漏洞SQL注入命令执行越权漏洞SSRF文件上传漏洞 客户端漏洞开放重定向XSSCSRF点击劫持CORS跨域配置错误WebSocket 网站常见安全漏洞 | 青训营 网站常见安全漏洞-网站基本组成及漏洞定义…

【python爬虫】—图片爬取

图片爬取 需求分析Python实现 需求分析 从https://pic.netbian.com/4kfengjing/网站爬取图片,并保存 Python实现 获取待爬取网页 def get_htmls(pageslist(range(2, 5))):"""获取待爬取网页"""pages_list []for page in pages:u…

Rn实现省市区三级联动

省市区三级联动选择是个很频繁的需求,但是查看了市面上很多插件不是太老不维护就是不满足需求,就试着实现一个 这个功能无任何依赖插件 功能略简单,但能实现需求 核心代码也尽力控制在了60行左右 pca-code.json树型数据来源 Administrative-d…

【Linux】基础IO

目录 一、回顾C语言文件操作二、文件系统调用接口1. open2.write3.read 三、文件描述符四、重定向1.输出重定向2.输入重定向 五、dup2 一、回顾C语言文件操作 1 #include<stdio.h>2 #include<stdlib.h>3 4 #define LOG "log.txt"5 6 int main()7 {8 //…

语言基础篇3——学习第一步,Python环境搭建

环境搭建 基础环境搭建 https://www.python.org/downloads/&#xff0c;以Python3.11.5为例&#xff1a; Install for Windows 提供安装程序或者压缩包&#xff0c;安装程序点击下一步即可&#xff0c;压缩包解压即可&#xff0c;注意配置根目录到系统环境变量PATH。 Ins…

Configurable Weather Parameters

1. Weather Parameters 2. Classification ClearNoon, CloudyNoon, WetNoon, WetCloudyNoon, SoftRainNoon, MidRainyNoon, HardRainNoon, ClearSunset, CloudySunset, WetSunset, WetCloudySunset, SoftRainSunset, MidRainSunset, HardRainSunset to do list: 可以关注一下…

导入excel数据给前端Echarts实现中国地图-类似热力图可视化

导入excel数据给前端Echarts实现中国地图-类似热力图可视化 程序文件&#xff1a; XinqiDaily/frontUtils-showSomeDatabaseonMapAboutChina/finalproject xin麒/XinQiUtilsOrDemo - 码云 - 开源中国 (gitee.com) https://gitee.com/flowers-bloom-is-the-sea/XinQiUtilsOr…

贪心算法总结篇

文章转自代码随想录 贪心算法总结篇 我刚刚开始讲解贪心系列的时候就说了&#xff0c;贪心系列并不打算严格的从简单到困难这么个顺序来讲解。 因为贪心的简单题可能往往过于简单甚至感觉不到贪心&#xff0c;如果我连续几天讲解简单的贪心&#xff0c;估计录友们一定会不耐…

地下管线三维自动建模软件MagicPipe3D V3.0发布

2023年9月1日经纬管网建模系统MagicPipe3D V3.0正式发布&#xff0c;该版本经过众多用户应用和反馈&#xff0c;在三维地下管网建模效果、效率、适配性方面均有显著提升&#xff01;MagicPipe3D本地离线参数化构建地下管网模型&#xff08;包括管道、接头、附属设施等&#xff…

OpenCV(五):图像颜色空间转换

目录 1.图像颜色空间介绍 RGB 颜色空间 2.HSV 颜色空间 3.RGBA 颜色空间 2.图像数据类型间的互相转换convertTo() 3.不同颜色空间互相转换cvtColor() 4.Android JNI demo 1.图像颜色空间介绍 RGB 颜色空间 RGB 颜色空间是最常见的颜色表示方式之一&#xff0c;其中 R、…

linux安装JDK及hadoop运行环境搭建

1.linux中安装jdk &#xff08;1&#xff09;下载JDK至opt/install目录下&#xff0c;opt下创建目录soft&#xff0c;并解压至当前目录 tar xvf ./jdk-8u321-linux-x64.tar.gz -C /opt/soft/ &#xff08;2&#xff09;改名 &#xff08;3&#xff09;配置环境变量&#xf…

C++哈希(散列)与unordered关联式容器封装(Map、Set)

一、unordered系列关联式容器 在C98中&#xff0c;STL提供了以红黑树为底层数据结构的关联式容器&#xff08;map、set等&#xff09;&#xff0c;查询时的效率可以达到,最差情况下需要比较红黑树的高度次。因此在C11中&#xff0c;STL提供了四个unordered系列关联式容器&…

CotEditor for mac 4.0.1 中文版(开源文本编辑器)

coteditorformac是一款简单实用的基于Cocoa的macOS纯文本编辑器&#xff0c;coteditormac版本可以用来编辑网页、结构化文本、程序源代码等文本文件&#xff0c;使用起来非常方便。 CotEditor for Mac具有正则表达式搜索和替换、语法高亮、编码等实用功能&#xff0c;而CotEdi…