Linux基础- 使用 Apache 服务部署静态网站
目录
零. 简介
一. linux安装Apache
二. 创建网页
三. window访问
修改了一下默认端口 到 8080
零. 简介
Apache 是世界使用排名第一的 Web 服务器软件。
它具有以下一些显著特点和优势:
- 开源免费:可以免费使用和修改,拥有庞大的社区支持,便于获取帮助和资源。
- 跨平台:能够在多种操作系统上运行,如 Linux、Windows、Unix 等。
- 稳定性高:经过长期的实践和优化,具有出色的稳定性和可靠性,能够长时间稳定运行。
- 功能强大:支持多种模块扩展,可以实现诸如 URL 重写、虚拟主机、SSL 加密、访问控制等丰富的功能。
- 配置灵活:通过配置文件可以对服务器的各种参数进行详细的设置和调整,以满足不同的需求。
- 安全性较好:不断更新以修复安全漏洞,并提供多种安全机制来保护服务器和网站。
Apache 广泛应用于各种规模的网站和应用程序的部署,无论是个人博客、企业网站还是大型电子商务平台,都可以基于 Apache 搭建可靠的 Web 服务。
一. linux安装Apache
在 Ubuntu 系统中安装 Apache 服务,可以按照以下步骤进行操作:
-
打开终端。
-
更新软件包列表:
sudo apt update
- 安装 Apache 服务:
sudo apt install apache2
- 安装过程中会提示确认一些信息,按回车键确认即可。
安装完成后,Apache 服务会自动启动。您可以通过以下方式进行验证:
-
在浏览器中输入服务器的本地 IP 地址,如果看到 Apache 的默认页面,说明安装成功。
-
您还可以使用以下命令查看 Apache 服务的状态:
sudo systemctl status apache2
如果您想进一步配置 Apache 服务(如虚拟主机、SSL 证书等),可以通过修改 /etc/apache2
目录下的相关配置文件来实现。
成功打开本地地址.
二. 创建网页
找到默认网页位置
如果不习惯这个模式,可以直接打开文件夹
输入 nautilus admin:/
就可以看到文件夹了
创建新的网页
运行网页
Apache2 配置的介绍:
Apache2 是一个开源的 HTTP 服务器软件。以下是一些常见的 Apache2 配置的介绍:
ServerRoot
:指定服务器的根目录。Listen
:监听的端口,可以指定 IP 地址和端口号,默认为监听所有 IP 的 80 端口。例如:Listen 80
或Listen 127.0.0.1:8080
。<IfModule unixd_module>
:通常用于设置所属用户和组,后面添加虚拟路径的文件夹必须拥有这个用户和组的读写权限。ServerAdmin
:当网站出现故障时,为客户提供的可帮助解决问题的邮件地址。ServerName
:设置服务器本机的主机名称以及端口,对 URL 地址的重定向很重要。DocumentRoot
:设置 Web 服务对客户端开放可见的文档根目录,即客户端访问网站的根路径,但符号链接和别名可指向其他位置。<Directory>
:用于控制特定目录的相关权限和设置。例如,Indexes
的作用是当目录下没有index.html
文件时,是否显示目录结构;Options
可设置目录的具体功能,如FollowSymLinks
允许访问链接文件;AllowOverride
可设置为None
完全忽略.htaccess
文件,或设置为All
允许.htaccess
文件中的指令生效;Require
用于指定访问权限,如all granted
表示无条件允许访问。DirectoryIndex
:设置默认的目录资源列表文件,即当访问目录时,首先寻找的文件。ErrorLog
:指定错误日志的路径。LogLevel
:设置记录错误的等级。LogFormat
:定义访问日志的格式。CustomLog
:使用该参数设置访问日志的位置和格式。<IfModule alias_module>
:可用于设置虚拟目录。<IfModule cgid_module>
:在特定运行模式下设置与 CGI 守护进程通信的套接字文件名前缀。<Directory "/usr/local/apache2/cgi-bin/">
:设定默认 CGI 脚本目录的属性,类似其他<Directory>
的设置。<IfModule headers_module>
:用于设置一些与请求头相关的操作。<IfModule mime_module>
:指定 MIME 类型映射文件,以及添加特定的文件类型映射。
在 Ubuntu 系统中,Apache2 的安装目录文件结构通常如下:
/etc/apache2/
:主配置目录。其中包含apache2.conf
(主配置文件,通常很少修改)、ports.conf
(所有监听的端口配置)、sites-available
(所有的虚拟主机配置文件)、sites-enabled
(所有正在运行的虚拟主机配置文件,该目录下的文件只是sites-available
下面文件的软链接)、mods-available
(已安装的 Apache2 模块,非启用的模块)、mods-enabled
(已启用的模块)、envvars
(Apache2 的环境变量,通常很少修改)等。
要修改 Apache2 的配置,需要根据具体需求编辑相应的配置文件。修改完成后,通常需要重新加载或重启 Apache2 服务以使配置生效。例如,在 Ubuntu 中可以使用sudo systemctl restart apache2
命令重启 Apache2 服务。
另外,Apache2 有多种并发处理模型(MPM),不同版本的具体配置方式可能会有所差异。例如在 2.4 版中,可通过修改 /etc/apache2/mods-enabled/mpm_perfork.conf
文件来配置 Prefork 模型的相关参数。
三. window访问
我是直接关闭了Ubuntu的防火墙
sudo systemctl stop firewalld.service;
查看ip地址
ip address
用windows telnet一下端口确保端口能通
虚拟机用的是 ant模式
修改了一下默认端口 到 8080
在 Ubuntu 中更改 Apache 的端口,您可以按照以下步骤进行操作:
- 打开 Apache 的端口配置文件:
sudo nano /etc/apache2/ports.conf
- 在该文件中,您会看到类似以下的内容:
# If you just change the port or add more ports here, you will likely also# have to change the VirtualHost statement in# /etc/apache2/sites-enabled/000-default.confListen 80
-
将
Listen 80
中的80
更改为您想要的端口号,例如Listen 8080
。 -
保存并关闭文件(在
nano
编辑器中,按Ctrl + X
,然后按Y
确认保存)。 -
接下来,您还需要更改默认站点配置文件中关于端口的设置。打开默认站点配置文件:
sudo nano /etc/apache2/sites-enabled/000-default.conf
- 找到类似于以下的内容:
<VirtualHost *:80>
-
将其中的
80
更改为您在ports.conf
文件中设置的新端口号,例如<VirtualHost *:8080>
。 -
保存并关闭文件。
-
最后,重启 Apache 服务以使更改生效:
sudo systemctl restart apache2
这样,Apache 就会在您指定的新端口上运行了。请确保新端口未被其他服务占用,并根据您的网络环境和安全策略,合理配置防火墙以允许对新端口的访问。
相关文章:

Linux基础- 使用 Apache 服务部署静态网站
目录 零. 简介 一. linux安装Apache 二. 创建网页 三. window访问 修改了一下默认端口 到 8080 零. 简介 Apache 是世界使用排名第一的 Web 服务器软件。 它具有以下一些显著特点和优势: 开源免费:可以免费使用和修改,拥有庞大的社区支…...

接口自动化测试框架实战(Pytest+Allure+Excel)
🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 1. Allure 简介 Allure 框架是一个灵活的、轻量级的、支持多语言的测试报告工具,它不…...

如何预防和处理他人盗用IP地址?
IP地址的定义及作用 解释 IP 地址在互联网中的作用。它是唯一标识网络设备的数字地址,类似于物理世界中的邮政地址。 1、IP地址盗窃的定义 解释一下什么是IP地址盗用,即非法使用他人的IP地址或者伪造IP地址的行为,这种行为可能引发法律和安…...

【ai】李沐 动手深度学学v2 环境安装:anaconda3、pycharm、d2
cuda-toolkit cuda_12.5.0_windows_network.exe 官方课程网站 第二版资源下载release版本 pycharm版本 李沐 【动手学深度学习v2 PyTorch版】 课程笔记 CUDA 选择11, 实际下载 12.5.0...
前后端分离对软件行业及架构设计的影响
在软件开发领域,前后端分离是一种越来越流行的架构设计模式。这种方法将用户界面(前端)与服务器逻辑(后端)分离开来,允许它们独立开发、测试和部署。本文将探讨前后端分离对软件行业和架构设计的影响&#…...
深入解析Dubbo架构层次
什么是Dubbo? Dubbo是阿里巴巴开源的一款高性能优秀的服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案。它的主要功能包括: 远程通信:提供高效的远程通信能力。负载均衡࿱…...
关于GPIO的上拉、下拉,无上下拉
1.GPIO_PULLUP(上拉) 作用和原理 作用:上拉模式会在GPIO引脚和电源电压(Vcc)之间连接一个内部上拉电阻。原理:当引脚配置为输入模式时,如果引脚没有连接到其他外部电路,内部上拉电…...

Python 语法基础二
7.常用内置函数 执行这个命令可以查看所有内置函数和内置对象(两个下划线) >>>dir(__builtins__) [__class__, __contains__, __delattr__, __delitem__, __dir__, __doc__, __eq__, __format__, __ge__, __getattribute__, __getitem__, __gt…...
HTML5与HTML:不仅仅是标签的革新
当我们提到HTML5,很多人会想到这是HTML的一个升级版本,增加了许多新的标签和特性。然而,HTML5带来的变化远不止于此。它是一个全面的网页开发框架,重新定义了网络应用程序的构建方式,为开发者提供了前所未有的灵活性和…...
Mybatis面试学习
1.介绍一下mybatis mybatis是一个半自动的ORM的框架,ORM就是对象关系映射。(对象指的是Java对象,关系指的是数据库中的关系模型,对象关系映射,指的就是在Java对象和数据库的关系模型之间建立一种对应关系)…...
el-date-picker设置时间范围
下面这种写法会报错:找不到expirationDate,这是因为涉及到this的指向问题 在普通函数中,this 的上下文并不指向 Vue 组件实例,而是取决于函数的调用方式或者是否使用了严格模式 <el-date-pickerclass"date-icon-common&q…...

Links: Challenging Puzzle Game Template(益智游戏模板)
链接:挑战益智游戏 《Links》是一款独特且具有挑战性的益智游戏,即将发布。 每个级别都会向玩家展示不同的棋盘。目标是通过移动和旋转所有棋子来连接它们。每个棋子都有自己的特点和功能-你可以移动它们,旋转它们,或者两者兼而有之。连接所有棋子,以解决难度和挑战不断增…...

java基于ssm+jsp 仓库智能仓储系统
1管理员功能模块 管理员登录,通过填写用户名、密码等信息,输入完成后选择登录即可进入智能仓储系统 ,如图1所示。 图1管理员登录界面图 智能仓储系统 ,在智能仓储系统可以查看个人中心、公告信息管理、员工管理、供应商管理、商…...

第24篇 滑动开关控制LED<二>
Q:如何使用Intel FPGA Monitor Program创建滑动开关控制LED工程并运行呢? A:创建工程的基本过程与前面的Intel FPGA Monitor Program的使用<三>一样,不同的地方是,本实验工程用到了开发板的外设硬件LED和SW&…...

Redis单例部署
目录 1. 概述2. 参考3. 环境4. 部署4.1 操作系统4.1.1 修改系统参数4.1.2 关闭透明大页内存4.1.3 修改系统限制 4.2 安装Redis4.2.1 下载Redis4.2.2 创建redis账号4.2.3 添加Redis环境变量4.2.4 创建Redis使用目录4.2.5 安装Redis4.2.6 手动修改配置文件(**可跳过&a…...
HarmonyOS4升级到Harmonyos Next(Api 11)学习捷径
HarmonyOS4升级到Harmonyos Next(Api 11)学习捷径,新技术学习路上少走弯路。HarmonyOS NEXT和HarmonyOS 4的基本语法都是一样的,但是还有一些区别。如果你学会HarmonyOS4,那么HarmonyOS Next也自然而然的会了。 Harmon…...

[电子电路学]电路分析基本概念1
第一章 电路分析的基本概念和基本定律 电路模型 反映实际电路部件的主要电磁性质的理想电路元件及其组合,是实际电路电气特性的抽象和近似。 理想电路元件 实际电路器件品种繁多,其电磁特性多元而复杂,分析和计算时非常困难。而理想电路元件…...
Linux bash: /usr/local/gcc/bin/gcc: 不是目录
ln -s /usr/local/bin/gcc /usr/bin/gcc ln -s /usr/local/bin/g /usr/bin/g 创建的软连接不生效 问题: [rootdev003 local]# gcc -v bash: /usr/local/gcc/bin/gcc: 不是目录 或者 [rootdev003 local]# gcc -v bash: /usr/local/bin/gcc: 没有那个文件或目录 解决&…...
vue项目中,pnpm不能用-解决
方法四:解决 PowerShell 执行策略问题 如果你决定继续使用 PowerShell,并且遇到执行策略问题,可以尝试以下方法解决: 永久更改执行策略: 在管理员权限的 PowerShell 中运行以下命令,以永久更改执行策略&am…...

数据处理python
1.列筛选 (1)某一列&某几列 对于一个表单里面的数据,如果我们想要对于这个表单里面的数据进行处理,我们可以一列一列进行处理,也可以多列一起进行处理; 一列一列处理: 只需要在这个dataf…...

第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
<6>-MySQL表的增删查改
目录 一,create(创建表) 二,retrieve(查询表) 1,select列 2,where条件 三,update(更新表) 四,delete(删除表…...

23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...

Day131 | 灵神 | 回溯算法 | 子集型 子集
Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣(LeetCode) 思路: 笔者写过很多次这道题了,不想写题解了,大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...

家政维修平台实战20:权限设计
目录 1 获取工人信息2 搭建工人入口3 权限判断总结 目前我们已经搭建好了基础的用户体系,主要是分成几个表,用户表我们是记录用户的基础信息,包括手机、昵称、头像。而工人和员工各有各的表。那么就有一个问题,不同的角色…...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...