Linux运维新手的修炼手扎之第19天

Apache 和 Nginx基础

1 apache

查看帮助:root@rocky9-12 \~# man apachectl
root@ubuntu24-13:~# apachectl --help
配置检测:apachectl -t

复制代码
全局配置(最小化):
        # 定义Apache服务器的根目录,所有相对路径都基于此目录
        ServerRoot "/etc/httpd"
        # 指定Apache监听80端口(HTTP默认端口)
        Listen 80
        # 设置Apache子进程运行的用户和组(通常使用专用低权限账户)
        User apache
        Group apache
        # 设置服务器的主机名和端口,用于解决启动警告和重定向
        ServerName www.example.com:80
        # 设置网站文件的根目录路径
        DocumentRoot "/var/www/html"
        # 对/var/www/html目录设置访问控制规则
        <Directory "/var/www/html">
            # 允许跟随符号链接,但禁止目录列表(Indexes)
            Options FollowSymLinks   
            # 禁止使用.htaccess文件覆盖配置(提升性能)
            AllowOverride None  
            # 允许所有客户端访问该目录
            Require all granted
        </Directory>
        #定义了一个名为 "combined" 的日志格式
        LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\""
combined
        # 指定错误日志文件路径
        ErrorLog "/var/log/httpd/error_log"
        # 设置错误日志记录级别为warn(记录警告及以上级别的错误)
        LogLevel warn
        # 定义访问日志路径和格式(combined格式记录完整访问信息)
        CustomLog "/var/log/httpd/access_log" combined
        # 设置最大并发连接数(超过此值新连接需等待)
        MaxRequestWorkers 150
        # 设置请求超时时间为60秒(包括接收和发送时间)
        Timeout 60
        # 控制服务器响应头信息(Prod表示只显示"Apache")
        ServerTokens Prod
        # 关闭错误页面的服务器版本信息显示
        ServerSignature Off	

虚拟主机配置
		<virtualhost *:10086>
			# 设置网站文件的根目录路径
  			DocumentRoot /data/server/apache/web1/
  			# 定制的路径必须使用Directory配置段
  			<Directory /data/server/apache/web1/>
    			Require all granted  # 允许所有访问
  			</Directory>
		</virtualhost>
		apachectl -t;systemctl restart apache2;netstat -tnulp | grep 10086;curl 10.0.0.13:10086

模块配置

ubuntu: apachectl -M
rocky: httpd -M
在 Apache HTTP 服务器中,"先 load 加载模块,后应用配置 conf",因为Apache的许多功能依赖于模块,如果模块没有先加载,相关的配置指令就无法生效。

2 IO类型:阻塞全程阻塞、非阻塞需轮询所有FD、多路复用同时监控多个FD,仅处理就绪的FD、信号驱动、异步完全由内核处理

同步:每一步任务执行,都必须有落地结果,没有落地结果,下一个任务不执行
异步:每一步任务执行,不需要等待执行落地结果,下一个任务随时执行
任务执行,等待数据的过程中不做任何的事情 -- 当前程序处于阻塞的状态
任务执行,等待数据的过程中的状态,同时做其他的任何的事情 -- 当前程序处于非阻塞状态

3 nginx

定位:web、反向代理负载均衡、缓存、邮件
架构:master+worker系统总并发承载能力=worker数量\*每个worker最大连接数

安装:rocky--yum install -y epel-release;yum install -y nginx

ubuntu--apt update;apt install -y nginx

配置结构:全局、event配置、http配置、server配置、location配置

相关推荐
dawnsky.liu6 分钟前
在 RHEL 中使用 goose 实现远程主机管理
linux·运维·ai
Linux运维技术栈2 小时前
CVE-2026-91403 高危漏洞修复:Rocky Linux 9 多版本 JDK 环境清理实操
java·linux·运维
云边云科技_云网融合3 小时前
连锁门店组网怎么做?SD-WAN 多分支组网的架构选型、部署与成本结构
服务器·数据库·php
云上先途13 小时前
企业 AI 服务部署周期多久,会不会影响原有业务运转?
大数据·运维·人工智能
网络小江3 小时前
组网第35课:静态路由——下一跳、出接口、默认路由、浮动静态与黑洞路由
服务器·网络·默认路由·黑洞路由·浮动静态路由
执伞人ONLY4 小时前
AI知识库自动化知识加工没做对,人工整理永远追不上知识产生
运维·人工智能·自动化
slongzhang_4 小时前
linux 递归删除源码文件|递归删除目录下 *.js,但排除 *.min.js
linux·开发语言·javascript
叼烟扛炮4 小时前
Linux 学习笔记(三十三):线程互斥——互斥锁(Mutex)与死锁
linux·运维·服务器·笔记·学习·1024程序员节
无足鸟ICT4 小时前
【RHCA+】who命令(查看已登陆用户)
linux·运维·服务器
Escalating_xu4 小时前
【Linux 网络编程】应用层协议 HTTP(下):Header、连接管理与 C++ HTTP 服务器
linux·服务器·网络