当前位置: 首页 > news >正文

WEB网站服务(一)

1.1 Apache网站服务基础

  1. 1.1.1Apache简介

  1. Apache HTTP Server是开源软件项目的杰出代表,基于标准的HTTP网络协议提供网页浏览服务。Apache服务器可以运行在Linux,UNIX,windows等多种操作系统·平台中。

  1. 1.Apache的起源

  1. 1995年,Apache服务程序的1.0版本发布,之后一直有“Apache Groub"负责管理和维护,直到1999年,在“Apache Groub” 的基础上成立了Apache软件基金会(Apache Software Foundation,AFS)。目前Apache项目一直由ASF管理和维护

  1. ASF是非营利性质组织,最初只负责“Apache Web”服务器项目管理,随着Web应用需求不断变大,ASF逐渐增加了许多与Web技术相关的开源软件项目。因此Apache现在不仅代表着Web服务器,而且广泛代表这ASF管理的众多开源软件项目。ASF的官方网站是http://www.apache.org

  1. Apache HTTP Server是ASF旗下著名的软件项目之一,正式名称为‘httpd’, 也就是历史上的Apache网站服务器。

  1. 2.Apache的主要特点

  1. 开放源代码:Apache服务器的重要特性之一,也是其他特性的基础

  1. 跨平台应用:Apache服务器可以运行在绝大多数软硬件平台上

  1. 支持各种Web编程语言:支持网页编程语言包括perl,php,python,java等。微软的ASP技术也可以在Apache服务器上使用

  1. 模块化设计:软件开发商可以编写标准的模块程序,从而添加Apache本身并不具有的其他功能3

  1. 运行非常稳定:Apache服务器可用于构建具有大负载访问量的Web站点

  1. 良好的安全性:Apache服务器具有相对较好的安全性,这是开源软件的特性

  1. 3.Apache的主要版本

  1. Apache服务器目前包括1.X和2.X,两个版本具有一定的差异,也具有各自的特性

  1. 1.X版本:最高版本1.3,继承了Apache服务器1.0版本以来的优秀特性和管理风格,具有非常好的兼容性和稳定性

  1. 2.X版本:使用的配置语法和管理风格也有所改变,新构建的网站服务器,使用2.X版本是不错的选择

  1. 1.1.2安装httpd服务器

  1. 配置Apache网站服务前,需要正确安装http服务器软件。httpd服务器的安装分为RPM安装,源码编译安装

  1. 将以源码包httpd-2.4.25.tar.gz为例

  1. 1.卸载使用RPM方式安装的httpd

  1. rpm -e httpd --nodeps

  1. 2.源码编译及安装·

  1. 解包

  1. tar zxf httpd-2.4.25.tar.gz -C /usr/src

  1. 切换目录

  1. cd /usr/src/httpd-2.4.25

  1. 配置

  1. 若要获取可用的各种配置选项及其含义,可以执行./configure --help

  1. / 表示当前目录

  1. ./configure --prefix=/usr/local/httpd --enable-so --ebable-rewrite --enable-charset-lite --ebable-ogi

  1. 上述配置命令,各选项的含义如下

  1. --perfix:指定将httpd服务程序安装到那个目录下

  1. --enable-so:启用动态加载模块支持,使httpd具备进一步的扩展功能的能力

  1. --enable-rewrite:启用网页地址重写功能,用于网站优化及目录迁移维护

  1. --enable-charset-lite:启动字符集支持,以便支持使用各种字符集编码的网页

  1. --enable-cgi:启用CGI脚本程序支持, 便于扩展网站的应用访问能力

  1. 编译及安装

  1. make

  1. make install

  1. 3.确认安装结果

  1. ls /usr/local/httpd

  1. bin cgi-bin error icons logs manual

  1. build conf htdocs inclue man modules

  1. /usr/local/httpd/bin:存放httpd服务的各种执行程序文件,包括住程序httpd,服务控制工具apachectl等。

  1. /usr/local/httpd/logs:存放httpd服务的日志文件

  1. /usr/local/httpd/cgi-bin:存放各种CGI程序文件

  1. /usr/local/httpd/conf:存放httpd服务的各种配置文件,包括主配置文件httpd.conf,增强配置子目录extra等。

  1. /usr/local/httpd/htdocs:存放网页文档,包括默认首页文件index.html等。

  1. /usr/local/httpd/modules:存放httpd服务的各种模块文件

  1. 4.优化执行路径

  1. 通过源码编译安装的httpd服务,程序路径并不在默认的搜索路径中为了使该服务在使用时更方便,可以为相关程序添加符号链接

  1. ln -s /usr/lcoal/httpd/bin/* /sur/local/bin

  1. 这样在执行相关命令就不用输入冗于的路径了。列如当执行httpd -v 命令(用于查看程序版本)时,相当于执行/usr/local/httpd/bin/httpd -v命令。

  1. 5.添加httpd系统服务

  1. 将编译安装的程序添加为系统服务有两种方式:1.通过chkconfig命令添加为系统服务,由systemctl进行管理。2.在/lib/systemd/system目录下,手动编写以.service结尾的单元配置文件。

  1. (1).使用chkconfig添加系统服务

  1. (2).建立【service】.service配置文件

  1. 在/lib/systemd/system/目录下,建立一个以.service结尾的单元配置文件,用于systemd控制或监控的httpd服务,配置文件分为三个部分,控制单元的定义,服务的定义以及安装部分。

  1. 配置文件个配置项的作用如下:

  1. Description:设置服务单元描述字符串

  1. After:设置服务单元的启动先后顺序。列入:httpd.service单元文件中出现“After=network.target” 表示启动时先启动network.target,后启动httpd.service,关闭时顺序相反。与After对应的患有一个Before字段,同上

  1. Type:设置服务进程的启动类型。注意当启动类型为forking时需要同时设置PIDFile配置项,以帮助systemd准确定位到服务的主进程

  1. PIDFile:设置服务的守护进程的PID文件

  1. ExecStart:设置服务启动时执行的命令

  1. ExecReload:设置服务重新加载时执行的命令

  1. KillMode:设置在单元停止时,杀死进程的方法。process表示仅杀死主进程

  1. Restart:设置服务进程正常推出,异常退出,被杀死,超时的时候,是否重启该服务。on-failure表示仅在进程异常退出时重启

  1. RestartSec:设置在重启服务前暂停多长时间,默认100毫秒

  1. WantedBy:设置该服务所在的Target(运行目标)

  1. 6.设置httpd服务开机自启动

  1. systemctl enable httpd.service

  1. 查看httpd服务的状态

  1. systemctl is-enabled httpd.service

1.2.httpd服务器基本配置

1.2.1.Web站点的部署过程

1.确认网站名称,IP地址

若要向internet中发布一个Web站点,需要申请一个合法的互联网IP地址,并向DNS服务提供商注册一个完整的网站名称。如:www.aaa.com

若要客户机在浏览器中通过网站名称来访问此Web站点,还要有可用的域名服务

2.配置并启动httpd服务

(1).编辑httpd配置文件

修改配置文件后建议进行语法检查

apachectl -t

(2).启动httpd服务

systemctl start httpd

(3).查看httpd端口(80)

netstat -anpt | grep httpd

有80端口说明安好了

相关文章:

WEB网站服务(一)

1.1 Apache网站服务基础1.1.1Apache简介Apache HTTP Server是开源软件项目的杰出代表,基于标准的HTTP网络协议提供网页浏览服务。Apache服务器可以运行在Linux,UNIX,windows等多种操作系统平台中。1.Apache的起源1995年,Apache服务程序的1.0版…...

Python数据分析script必备知识(一)

Python数据分析script必备知识(一) 1.重定向终端输出内容 使生成的结果移动到其他位置 # 重定向, 使生成的结果移动到其他位置 import syssys.stderr = sys.stdoutprint(dir(sys)) # ,,,,,__stderr__, __stdin__, __stdout__,,,,,,# 使用场景:脚本上线时,想要把输出结果…...

初识linux之管道

一、进程间通信的概念大家都知道,进程是具有独立性的,因为一个程序运行起来生成进程时,也会生成它的进程结构体,即PCB,然后然后通过进程结构体中的结构体指针找到它的虚拟地址空间,然后再通过它的页表映射到…...

C++成神之路 | 第一课【步入C++的世界】

目录 一、认识C++ 1.1、关于 C++ 1.2、C++的前世今生 1.2.1、C+...

【面试题】大厂面试官:你做过什么有亮点的项目吗?

大厂面试题分享 面试题库前后端面试题库 (面试必备) 推荐:★★★★★地址:前端面试题库前言大厂面试中除了问常见的算法网络基础,和一些八股文手写体之外,经常出现的一个问题就是,你做过什么项目…...

Springboot Long类型数据太长返回给前端,精度丢失问题 复现、解决

前言 惯例,收到兄弟求救,关于long类型丢失精度的问题: 存在一个初学者不会,就会有第二个初学者不会,所以我出手。 正文 不多说,开搞。 如题, 后端返回的数据 给到 前端, Long类型数…...

Anaconda虚拟环境的创建方法(命令创建)

虚拟环境介绍: 虚拟环境是一为某个项目创建的专属于它的python包,因此做python项目时,一般一个项目用一个虚拟环境。在实际开发中,如果项目A需要某个包的1.0版本,项目B需要此包的2.0版本。如果没有安装虚拟环境&#…...

数据结构——树与二叉树

作者:几冬雪来 时间:2023年3月22日 内容:数据结构树与二叉树的讲解(介绍) 目录 前言: 1.树的概念: 2.树与非树: 3.树的定义: 4.树的应用: 二叉树&…...

vue后台管理系统

后面可参考下:vue系列(三)——手把手教你搭建一个vue3管理后台基础模板 以下代码项目gitee地址 文章目录1. 初始化前端项目初始化项目添加加载效果配置 vite.config.js2. 使用路由安装路由配置路由配置别名和跳转安装pathvite.config.jsjsco…...

spring boot 集成 postgis jar

要将 PostGIS 集成到 Spring Boot 应用程序中,需要按照以下步骤进行操作:1. 将 PostGIS JDBC 驱动程序添加到项目依赖项中。可以在 Maven 或 Gradle 中添加以下依赖项:Maven:```xml <dependency><groupId>org.postgresql</groupId><artifactId>pos…...

【Java进阶篇】——反射机制

一、反射的概念 1.1 反射出现的背景 Java程序中&#xff0c;所有对象都有两种类型&#xff1a;编译时类型和运行时类型&#xff0c;而很多时候对象的编译时类型和运行时类型不一致 Object obj new String("hello")、obj.getClass(); 如果某些变量或形参的声明类型…...

Oracle中含有recover 状态的数据文件环境中,做异机恢复

背景&#xff1a; 我们在一些恢复测试案例中&#xff0c;会经常遇到一些奇怪的问题&#xff0c;其中有的是源端数据文件不规范而导致恢复过程出错&#xff0c;比较常见的错误有&#xff1a; 数据文件名称重复&#xff08;如&#xff1a;/oradata1/user01.dbf 和 /oradata2/us…...

图像识别模型

一、数据准备 首先要做一些数据准备方面的工作&#xff1a;一是把数据集切分为训练集和验证集&#xff0c; 二是转换为tfrecord 格式。在data_prepare&#xff0f;文件夹中提供了会用到的数据集和代码。首先要将自己的数据集切分为训练集和验证集&#xff0c;训练集用于训练模型…...

[零刻]EQ12 N100 迷你主机:从开箱到安装ESXi+虚拟机

开箱先上图&#xff1a;配置详情&#xff1a;EQ12采用了Intel最新推出的N100系列的处理&#xff0c;超低的功耗&#xff0c;以及出色的CPU性能用来做软路由或者是All in one 相当不错&#xff0c;CPU带有主动散热风扇&#xff0c;在长期运行下散热完全不用担心&#xff0c;性价…...

MongoDB基础

优质博客 IT-BLOG-CN 一、简介 MongoDB是一个强大的分布式文件存储的NoSQL数据库&#xff0c;天然支持高可用、分布式和灵活设计。由C编写&#xff0c;运行稳定&#xff0c;性能高。为WEB应用提供可扩展的高性能数据存储解决方案。主要解决关系型数据库数据量大&#xff0c;并…...

【Linux】Linux基本指令(下)

前言&#xff1a; 紧接上期【Linux】基本指令&#xff08;上&#xff09;的学习&#xff0c;今天我们继续学习基本指令操作&#xff0c;深入探讨指令的基本知识。 目录 &#xff08;一&#xff09;常用指令 &#x1f449;more指令 &#x1f449;less指令&#xff08;重要&…...

基于uniapp+u-view开发小程序【技术点整理】

一、上传图片 1.实现效果&#xff1a; 2.具体代码&#xff1a; <template><view><view class"imgbox"><view>职业证书</view><!-- 上传图片 --><u-upload :fileList"fileList1" afterRead"afterRead"…...

投稿指南【NO.7】目标检测论文写作模板(初稿)

中文标题&#xff08;名词性短语&#xff0c;少于20字&#xff0c;尽量不使用外文缩写词&#xff09;张晓敏1&#xff0c;作者1,2***&#xff0c;作者2**&#xff0c;作者2*&#xff08;通信作者右上标*&#xff09;1中国科学院上海光学精密机械研究所空间激光传输与探测技术重…...

【绘图】比Matplotlib更强大:ProPlot

✅作者简介&#xff1a;在读博士&#xff0c;伪程序媛&#xff0c;人工智能领域学习者&#xff0c;深耕机器学习&#xff0c;交叉学科实践者&#xff0c;周更前沿文章解读&#xff0c;提供科研小工具&#xff0c;分享科研经验&#xff0c;欢迎交流&#xff01;&#x1f4cc;个人…...

经典七大比较排序算法 ·上

经典七大比较排序算法 上1 选择排序1.1 算法思想1.2 代码实现1.3 选择排序特性2 冒泡排序2.1 算法思想2.2 代码实现2.3 冒泡排序特性3 堆排序3.1 堆排序特性&#xff1a;4 快速排序4.1 算法思想4.2 代码实现4.3 快速排序特性5 归并排序5.1 算法思想5.2 代码实现5.3 归并排序特性…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

微信小程序之bind和catch

这两个呢&#xff0c;都是绑定事件用的&#xff0c;具体使用有些小区别。 官方文档&#xff1a; 事件冒泡处理不同 bind&#xff1a;绑定的事件会向上冒泡&#xff0c;即触发当前组件的事件后&#xff0c;还会继续触发父组件的相同事件。例如&#xff0c;有一个子视图绑定了b…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具

作者&#xff1a;来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗&#xff1f;了解下一期 Elasticsearch Engineer 培训的时间吧&#xff01; Elasticsearch 拥有众多新功能&#xff0c;助你为自己…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

多种风格导航菜单 HTML 实现(附源码)

下面我将为您展示 6 种不同风格的导航菜单实现&#xff0c;每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...

CMake控制VS2022项目文件分组

我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...

什么是Ansible Jinja2

理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具&#xff0c;可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板&#xff0c;允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板&#xff0c;并通…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

SAP学习笔记 - 开发26 - 前端Fiori开发 OData V2 和 V4 的差异 (Deepseek整理)

上一章用到了V2 的概念&#xff0c;其实 Fiori当中还有 V4&#xff0c;咱们这一章来总结一下 V2 和 V4。 SAP学习笔记 - 开发25 - 前端Fiori开发 Remote OData Service(使用远端Odata服务)&#xff0c;代理中间件&#xff08;ui5-middleware-simpleproxy&#xff09;-CSDN博客…...