【Liunx】部署WEB服务:Apache
【Liunx】部署WEB服务:Apache
- 概述
- Apache
- 1.介绍
- 2.Apache文件路径
- 3.Apache详解
- (1)安装Apache
- (2)启动Apache
- (3)配置文件
- a.Apache主配置文件:vim /etc/httpd/conf/httpd.conf信息:
- b.基于主机头的虚拟主机
- (4)开始演示:
- a.新建两个网站根目录
- b.分别在两个网站根目录新建两个index.html
- c. 新建虚拟机的配置文件
- d.重启服务
- e.为了解析出circle.com本地域名:需要修改named配置文件
- f.访问我们定义的域名:结果如下
概述
- HTTP协议,全称HyperText Transfer Protocol,中文名为超文本传输协议,是互联网中最常用的一种网络协议。HTTP的重要应用之一是WWW服务。设计HTTP协议最初目的就是提供一种发布和接收HTML(一种页面标记语言)页面的方法(请求返回)。
- HTTP协议是互联网上常用的通信协议之一。它有很多的应用,但最流行的就是用于Web浏览器和Web服务器之间的通信,即WWW应用或称Web应用。
- WWW,全称World Wide Web,常称为Web,中文译为“万维网”。它是目前互联网上最受用户欢迎的信息服务形式。HTTP协议的WWW服务应用的默认端口为80(端口的概念),另外的一个加密的WWW服务应用https的默认端口为443,主要用于网银,支付等和钱相关的业务。当今,HTTP服务,WWW服务,Web服务三者的概念已经混淆了,都是指当下最常见的网站服务应用。
出
Apache
1.介绍
- Apache是世界使用排名第一的Web服务器软件。它可以运行在凡乎所有广泛使用的计算机平台上。
- Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自"a patchy server"的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。
2.Apache文件路径
- 软件包名: httpd
- 默认Web目录: /var/www/html
- 配置文件主目录: /etc/httpd/
- 主配置文件: /etc/httpd/conf/httpd.conf
3.Apache详解
(1)安装Apache
yum install -y httpd
(2)启动Apache
systemctl start httpd

显示如图:证明 Apache已正常启动

(3)配置文件
a.Apache主配置文件:vim /etc/httpd/conf/httpd.conf信息:
ServerRoot "/etc/httpd" //服务器安装的路径
Listen 80 //监听端口
Include conf.modules.d/*.conf //引用 conf.modules.d下的.conf模块配置文件
User apache //运行用户apache
Group apache //运行用户组
ServerAdmin root@localhost //如果Apache运行出错发送的邮箱地址
<Directory /> //项目根目录,访问根目录拒绝AllowOverride noneRequire all denied
</Directory>
DocumentRoot "/var/www/html" //网站主目录
<Directory "/var/www"> // /var/www 允许访问AllowOverride None# Allow open access:Require all granted
</Directory>
<Directory "/var/www/html">Options Indexes FollowSymLinks //运行使用连接等方式AllowOverride NoneRequire all granted
</Directory>
<IfModule dir_module>DirectoryIndex index.html //默认访问页面index.html
</IfModule>
<Files ".ht*">Require all denied //禁用
</Files>
ErrorLog "logs/error_log" //错误日志
LogLevel warn //警告等级
<IfModule log_config_module> //日志格式LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combinedLogFormat "%h %l %u %t \"%r\" %>s %b" common<IfModule logio_module>LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio</IfModule>CustomLog "logs/access_log" combined
</IfModule><IfModule alias_module>ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
</IfModule>
<Directory "/var/www/cgi-bin">AllowOverride NoneOptions NoneRequire all granted
</Directory>
<IfModule mime_module> //运行文件类型TypesConfig /etc/mime.typeAddType application/x-compress .ZAddType application/x-gzip .gz .tgzAddType text/html .shtmlAddOutputFilter INCLUDES .shtml
</IfModule>
AddDefaultCharset UTF-8 //默认编码<IfModule mime_magic_module>MIMEMagicFile conf/magic
</IfModule>
EnableSendfile on
IncludeOptional conf.d/*.conf //引入conf.d/的所有.conf文件
b.基于主机头的虚拟主机
<VirtualHost *:自定义端口>
ServerName www.circle.com #在ServerName后加上你的网站名称
ServerAdmin admin@circle.com #在ServerAdmin后加上网站管理员的电子邮件地址,方便别人有问题是可以联络网站管理员
DocumentRoot /var/www/html #在DocumentRoot后加上存放网站内容的目录路径(用户的个人目录)
</VirtualHost>
(4)开始演示:
a.新建两个网站根目录
[root@server1 conf.d]# mkdir /var/www/html/web{1,2}
[root@server1 conf.d]# cd /var/www/html/
[root@server1 html]# ls -l
总用量 0
drwxr-xr-x 2 root root 101 8月 2 14:12 exam
drwxr-xr-x 2 root root 6 11月 14 06:34 web1
drwxr-xr-x 2 root root 6 11月 14 06:34 web2
b.分别在两个网站根目录新建两个index.html
[root@server1 html]# vi web1/index.html
[root@server1 html]# vi web2/index.html
[root@server1 html]# ls web1
index.html
[root@server1 html]# ls web2
index.html
c. 新建虚拟机的配置文件
[root@server1 html]# cd /etc/httpd/conf.d/
[root@server1 conf.d]# vi web1.conf
[root@server1 conf.d]# vi web2.conf
[root@server1 conf.d]# cat web1.conf
<VirtualHost 192.168.122.1:80>ServerName www.circle.comServerAdmin admin@circle.comDocumentRoot /var/www/html/web1
</VirtualHost>
[root@server1 conf.d]# cat web2.conf
<VirtualHost 192.168.122.1:80>ServerName admin.circle.comServerAdmin admin@circle.comDocumentRoot /var/www/html/web2
</VirtualHost>
d.重启服务
systemctl restart httpd
e.为了解析出circle.com本地域名:需要修改named配置文件
vi /etc/named.conf
修改后的文件内容如下
[root@server1 named]# cat /etc/named.conf
options {listen-on port 53 { 192.168.122.1; };directory "/var/named";allow-query { any; };
};zone "uos.com" IN {type master;file "uos.com.db";
};zone "circle.com" IN {type master;file "circle.com.db";
};zone "." IN {type hint;file "named.ca";
};
[root@server1 named]# cp -p uos.com.db circle.com.db
[root@server1 named]# ls -l
总用量 28
-rw-r----- 1 root named 246 11月 13 16:29 circle.com.db
drwxrwx--- 2 named named 6 10月 12 2022 data
drwxrwx--- 2 named named 6 10月 12 2022 dynamic
-rw-r----- 1 root named 2253 10月 12 2022 named.ca
-rw-r----- 1 root named 152 10月 12 2022 named.empty
-rw-r----- 1 root named 152 10月 12 2022 named.localhost
-rw-r----- 1 root named 168 10月 12 2022 named.loopback
drwxrwx--- 2 named named 6 10月 12 2022 slaves
-rw-r----- 1 root named 246 11月 13 16:29 uos.com.db
-rw-r----- 1 root named 238 11月 13 16:07 uos.com.files
[root@server1 named]# vi circle.com.db
[root@server1 named]# cat circle.com.db
$TTL 1D
@ IN SOA ns.circle.com root.ns.circle.com. (0 ; serial1D ; refresh1H ; retry1W ; expire3H ) ; minimumIN NS ns.circle.com.
ns IN A 192.168.122.1
www IN A 192.168.122.1
admin IN A 192.168.122.1
oa IN A 192.168.122.1
[root@server1 named]# systemctl restart named
f.访问我们定义的域名:结果如下
[root@server1 named]# curl www.circle.com
this is web1;
[root@server1 named]# curl admin.circle.com
this is web2;
[root@server1 named]#
相关文章:
【Liunx】部署WEB服务:Apache
【Liunx】部署WEB服务:Apache 概述Apache1.介绍2.Apache文件路径3.Apache详解(1)安装Apache(2)启动Apache(3)配置文件a.Apache主配置文件:vim /etc/httpd/conf/httpd.conf信息:b.基于主机头的虚拟主机 (4)开始演示:a.新建两个网站根目录b.分别…...
数字媒体技术基础之:常见图片文件格式
在数字图像处理和图形设计领域,了解不同的图片文件格式及其特点是至关重要的。每种格式都有其独特的用途和优势。以下介绍一些最常见的图片文件格式。 JPEG Joint Photographic Experts Group 扩展名:.jpg 或 .jpeg 特点: 1、有损压缩&#x…...
2023-2024-2 高级语言程序设计-二维数组
7-1 矩阵运算 给定一个nn的方阵,本题要求计算该矩阵除副对角线、最后一列和最后一行以外的所有元素之和。副对角线为从矩阵的右上角至左下角的连线。 输入格式: 输入第一行给出正整数n(1<n≤10);随后n行,每行给出…...
【uniapp】确认弹出框,选择确定和取消
代码如下: <view style"display: flex; justify-content: space-around;"><button class"button" click"submit">t提交</button> </view>submit(){let thatthisuni.showModal({title: 提示:,con…...
阿里云容器镜像服务的运维总结
一、背景 容器镜像服务,作为一个可选付费产品,主要作用是存储docker的镜像仓库,供k8s拉取到Pod节点里。 你可以自己搭建一个harbor镜像仓库,在公司的开发环境下,将image推送到仓库;然后在生产k8s从仓库拉取…...
修炼k8s+flink+hdfs+dlink(七:flinkcdc)
一 :flinkcdc官网链接。 https://ververica.github.io/flink-cdc-connectors/release-2.1/content/about.html 二:在flink中添加jar包。 在flink lib目录下增加你所需要的包。 https://kdocs.cn/join/gv467qi?f101 邀请你加入共享群「工作使用重要工具…...
排查问题流程
1、问题定义和描述: 确定问题的性质、表现和影响。 收集和整理相关的问题描述和报告。 2、问题复现: 尝试在适当的环境中重现问题。 确定问题发生的条件、步骤和触发器。 3、问题分析: 收集和分析相关的日志、错误消息或警报。 使用适当的工…...
【nlp】2.2 传统RNN模型
传统RNN模型 1 传统RNN模型1.1 RNN结构分析1.2 使用Pytorch构建RNN模型1.3 传统RNN优缺点1 传统RNN模型 1.1 RNN结构分析 结构解释图: 内部结构分析: 我们把目光集中在中间的方块部分, 它的输入有两部分, 分别是h(t-1)以及x(t), 代表上一时间步的隐层输出, 以及此时间步的…...
C/C++---------------LeetCode第49.字母异位词分组
字母异位词分组 题目及要求哈希算法在主函数内使用 题目及要求 给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的所有字母得到的一个新单词。 示例 1: 输入: strs [“eat”, “tea”, “tan”…...
spark调优案例分享
做了一个Spark调优案例的分享 最近在整理了Spark相关的调优案例,并做了以下分享:spark调优案例 ,注意是Mac Keynote...
阿里达摩院开源DAMO-YOLO
1.简介 DAMO-YOLO是一个兼顾速度与精度的目标检测框架,其效果超越了目前的一众YOLO系列方法,在实现SOTA的同时,保持了很高的推理速度。DAMO-YOLO是在YOLO框架基础上引入了一系列新技术,对整个检测框架进行了大幅的修改。具体包括…...
【异常检测小集】
目录 【2018 ICLR】DAGMM:Deep Autoencoding Gaussian Mixture Model for Unsupervised Anomaly Detection【2021 TNNLS】无名:Feature Encoding with AutoEncoders for Weakly-supervised Anomaly Detection 【2018 ICLR】DAGMM:Deep Autoen…...
Mybatis-Plus的IPage和Page
Mybatis-Plus 中的分页查询接口主要有两个:IPage 和 Page。 IPage 接口: IPage 是 Mybatis-Plus 中的分页结果集接口,它继承了 Mybatis 的 RowBounds 接口,提供了一系列的分页查询方法。该接口主要用于返回分页后的数据结果。 Pa…...
jupyter lab常用插件集合
❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…...
centos 6.10 安装 boost 1.78.0
下载地址 找到对应的版本,下载源码,而不是二进制文件。 解压文件 cd boost_1_78_0 ./bootstrap.sh ./b2 install -perfix /usr/local/boost1.78.0/...
Vue 3.0 + vite + axios+PHP跨域问题的解决办法
最后一个Web项目,采用前后端分离。 前端:Vue 3.0 viteelement plus 后端:PHP 运行时前端和后端是两个程序,前端需要时才向后端请求数据。由于是两个程序,这就会出现跨域问题。 比如前端某个地方需要请求的接口如下…...
软件外包开发的开发文档
软件开发文档是一个重要的工具,用于记录和传达项目信息,帮助开发团队和利益相关者理解项目的各个方面。以下是一般性的软件开发文档编写格式,不同组织和项目可能有所不同,但这些通用准则可以帮助确保文档的清晰性和易读性…...
如何清理C盘文件
设置-系统-存储 在里面处理 搜索磁盘清理 然后选择系统文件,清理windows old等乱七八糟的东西 转移虚拟内存 关闭系统休眠功能 【管理员:命令提示符】窗口,输入命令:powercfg -h off,然后回车就可以关闭系统休眠…...
从测试的角度看待南航机票bug事件
事件描述 11月8日晚间,多名消费者反映南方航空多条成都进出港航线票价(不含机建燃油费)低至10元、20元、30元不等。上述超低价机票不仅在南方航空App可以购买,多家在线旅游平台也都能抢到。 11月9日,南航官方发布公告…...
通过 dump 虚拟机线程方法栈和堆内存来分析 Android 卡顿和 OOM 问题
作者:Tans5 Android 中的性能问题无非就是卡顿和 OOM,虽然总体就这两种,但是造成这两种性能问题的原因却是非常多,需要具体的原因具体分析,而且这是非常复杂的。本篇文章只是简单介绍如何找到造成这些问题的直接原因的…...
Python:操作 Excel 折叠
💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...
FastAPI 教程:从入门到实践
FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API,支持 Python 3.6。它基于标准 Python 类型提示,易于学习且功能强大。以下是一个完整的 FastAPI 入门教程,涵盖从环境搭建到创建并运行一个简单的…...
汽车生产虚拟实训中的技能提升与生产优化
在制造业蓬勃发展的大背景下,虚拟教学实训宛如一颗璀璨的新星,正发挥着不可或缺且日益凸显的关键作用,源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例,汽车生产线上各类…...
MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...
JDK 17 新特性
#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持,不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的ÿ…...
让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...
人机融合智能 | “人智交互”跨学科新领域
本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...
C#中的CLR属性、依赖属性与附加属性
CLR属性的主要特征 封装性: 隐藏字段的实现细节 提供对字段的受控访问 访问控制: 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性: 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑: 可以…...
论文阅读笔记——Muffin: Testing Deep Learning Libraries via Neural Architecture Fuzzing
Muffin 论文 现有方法 CRADLE 和 LEMON,依赖模型推理阶段输出进行差分测试,但在训练阶段是不可行的,因为训练阶段直到最后才有固定输出,中间过程是不断变化的。API 库覆盖低,因为各个 API 都是在各种具体场景下使用。…...
