RHCE——WEB服务器的部署及优化

URL组成

<scheme>://<user>:<password>@<host>:<port>/<path>:<params>?<query>#<frag>
scheme     方案        访问服务器以获取资源时要使用哪种协议
user       用户        某些方案访问资源时需要的用户名
password   密码        用户对应的密码,中间用:分隔
scheme     方案        访问服务器以获取资源时要使用哪种协议
host       主机        资源宿主服务器的主机名或IP地址
port       端口        资源宿主服务器正在监听的端口号,很多方案有默认端口号
path       路径        服务器资源的本地名,由一个/将其与前面的URL组件分隔
params     参数        指定输入的参数,参数为名/值对,多个参数,用;分隔
query      查询        传递参数给程序,如数据库,用?分隔,多个查询用&分隔
frag       片段        一小片或一部分资源的名字,此组件在客户端使用,用#分隔

Nginx的安装

 vim /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx
baseurl=http://nginx.org/packages/rhel/9/x86_64
gpgcheck=0dnf install nginx –ysystemctl enable --now nginx.servicefirewall-cmd --permanent --add-service=httpfirewall-cmd –reload

 nginx全局配置

user nginx;                                     #nginx程序运行用户
worker_processes auto;                          #开启work进程数量
error_log /var/log/nginx/error.log notice;      #错误日志
pid /var/run/nginx.pid;                         #pid文件
events {
worker_connections 1024;                        #可接受最大连接数
}

 http模块配置

http {
include /etc/nginx/mime.types;                   #可解析的静态资源类型
default_type application/octet-stream;           #用来配置Nginx响应前端请求默认的MIME类型
log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;       #访问日志
sendfile          on;                            # Nginx服务器是否使用sendfile()传输文件
#tcp_nopush       on;                            # 当包累计到一定大小后就发送,默认0.2s一次
keepalive_timeout 65;                            # 长连接超时时间
#gzip             on;                            #可以使网站的css、js 、xml、html 等静态资源在传输时进行压缩
include /etc/nginx/conf.d/*.conf;                #指定子配置文件
}

子配置文件

/etc/nginx/conf.d/default.conf
server {listen 80;                                #监听端口server_name localhost;                    #服务器的名字location / {root /usr/share/nginx/html;           #默认发布目录index index.html index.htm;           #默认发布文件}#error_page 404 /404.html;# redirect server error pages to the static page /50x.html#error_page 500 502 503 504 /50x.html;     #访问出错呈现错误页面location = /50x.html {root /usr/share/nginx/html;
}
}

Nginx配置

基于IP的虚拟主机

ip addr add 172.25.254.111/24 dev ens160
ip addr add 172.25.254.222/24 dev ens160
mkdir -p /usr/share/nginx/vhostroot/{111,222}/html
echo 172.25.254.111 > /usr/share/nginx/vhostroot/111/html/index.html
echo 172.25.254.222 > /usr/share/nginx/vhostroot/222/html/index.html
vim vhost_ip.conf
server{listen 172.25.254.111:80;location / {root /var/www/virtualdir/111/html;index index.html index.htm}
}
server{listen 172.25.254.222:80;location / {root /var/www/virtualdir/222/html;index index.html index.htm}
}
curl 172.25.254.222:8080
172.25.254.222
curl 172.25.254.111
172.25.254.111

基于域名的虚拟主机

mkdir -p /usr/share/nginx/vhostroot/{bbs,news}/html
echo news.easylee.org > /usr/share/nginx/vhostroot/news/html/index.html
echo bbs.easylee.org > /usr/share/nginx/vhostroot/bbs/html/index.html
vim vhost_name.conf
server {listen 80;server_name bbs.carter.org;location / {root /usr/share/nginx/vhostroot/bbs/html;index index.html index.htm;}
}
server {listen 80;server_name news.carter.org;location / {root /usr/share/nginx/vhostroot/bbs/html;index index.html index.htm;}
}
测试:
[root@localhost conf.d]# curl news.carter.org
news.easylee.org
[root@localhost conf.d]# curl bbs.carter.org
news.carter.org
本地解析:
vim /etc/hosts
172.25.254.100 bbs.carter.org news.carter.org

 web服务器的访问控制

mkdir -p /usr/share/nginx/vhostroot/bbs/html/admin
echo admin page > /usr/share/nginx/vhostroot/bbs/html/admin/index.html
vim vhost_name.conf
server {listen 80;root /usr/share/nginx/vhostroot/bbs/html;index index.html index.htm;server_name bbs.easylee.org;location / {}location /admin/ {allow 172.25.254.100;deny all;}
}

 

vim vhost_name.conf
server {listen 80;root /usr/share/nginx/vhostroot/bbs/html;index index.html index.htm;server_name bbs.carter.org;location / {}location /admin/ {auth_basic on;auth_basic_user_file /etc/nginx/.htpasswd;}
}

 

 部署https

mkdir -p /etc/nginx/certs
openssl req -newkey rsa:2048 -nodes -sha256 \
-keyout /etc/nginx/certs/carter.org.key -x509 -days 365 \
-out /etc/nginx/certs/carter.org.crt
--------------------------------------
按照提示填入相应信息
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Shannxi
Locality Name (eg, city) [Default City]:Xi'An
Organization Name (eg, company) [Default Company Ltd]:carter
Organizational Unit Name (eg, section) []:web
Common Name (eg, your name or your server's hostname) []:www.carter.org
Email Address []:carter@163.com
配置nginx开启https功能
mkdir /usr/share/nginx/vhostroot/login/html -p
echo login.carter.org > /usr/share/nginx/vhostroot/login/html/index.html
vim vhost_name.conf
server {listen 443 ssl;server_name login.carter.org;ssl_certificate /etc/nginx/certs/carter.org.crt;ssl_certificate_key /etc/nginx/certs/carter.org.key;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_ciphers HIGH:!aNULL:!MD5;location / {root /usr/share/nginx/vhostroot/login/html;index index.html index.htm;}
}强制访问加密
vim vhost_name.conf
server {listen 80;server_name login.carter.org;rewrite ^/(.*)$ https://login.carter.org/$1 permanent;
}^/(.*)$                           这时正则表达式语法表示匹配浏览器地址栏中的所有内容
$1                                login.easylee.org/xxx 这个地址转换时保留xxx
permanent                         表示永久转换301
生成php测试页
mkdir -p /usr/share/nginx/html/php
vim /usr/share/nginx/html/php/index.php
<?phpphpinfo();
?>配置web服务器对php页面的发布
server {listen 80;server_name localhost;location ~ \.php$ {root /usr/share/nginx/html/php;fastcgi_pass unix:/run/php-fpm/www.sock;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}
}

 

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

day03(单片机高级)RTOS

目录 RTOS(实时操作系统) 裸机开发模式 轮询方式 前后台&#xff08;中断方式&#xff09; 改进&#xff08;前后台&#xff08;中断&#xff09;&#xff09;定时器 裸机进一步优化 裸机的其他问题 RTOS的概念 什么是RTOS 为什么要使用 RTOS RTOS的应用场景 RTOS的…

基于SSM的毕业论文管理系统【附源码】

基于SSM的毕业论文管理系统&#xff08;源码L文说明文档&#xff09; 目录 4 系统设计 4.1 系统结构设计 4.2 系统顺序图设计 4.3 系统数据库设计 5 系统的实现 5.1 登录模块的实现 5.2 学生管理模块的实现 5.3 导师管理模块的实现 5.4 课题管理模块的实现 …

擎耀数字车灯CAN/LIN总线网络定向数据采集控制解决方案实施流程

2024年是数字车灯崛起的元年&#xff0c;随着车辆的智能化和网络化程度不断提高&#xff0c;车载网络系统&#xff08;如CAN总线&#xff09;成为连接各个电子控制单元&#xff08;ECU&#xff09;的重要纽带。车灯作为车辆重要的安全组件之一&#xff0c;其工作状态直接影响到…

【C++之STL】摸清 string 的模拟实现(上)

文章目录 1. 为什么要模拟实现&#xff1f;2. 基本框架搭建3. 构造函数3. 1 默认构造/from c_str3. 2 拷贝构造3. 2. 1 深浅拷贝 3. 3 fill3. 4 迭代器区间构造 4. 容量操作4. 1 size()和capacity()和empty()4. 2 clear()4. 3 resize()4. 4 reserve() 1. 为什么要模拟实现&…

视频直播5G CPE解决方案:ZX7981PG/ZX7981PMWIFI6网络覆盖

方案背景 视频直播蓬勃发展的当下&#xff0c;传统直播网络联网方式的局限性越来越明显。目前传统直播的局限性主要集中在以下几个方面&#xff1a; 传统直播间网络架构条件有限&#xff0c;可连接WIFI数量少&#xff0c;多终端同时直播难以维持&#xff1b;目前4G网络带宽有限…

input file结合vue3和vant实现上传图片效果,并显示上传进度百分比%

这里写自定义目录标题 采用的dom结构是input file&#xff0c;label事件绑定&#xff0c;一下为代码传入参数为uploadNum实现效果如图上传中&#xff0c;图片1上传成功&#xff0c;图片2 采用的dom结构是input file&#xff0c;label事件绑定&#xff0c;一下为代码 传入参数为…

SELECT 语句详解

开发准备 注:如果你是从上一节直接进入本节进行学习的,请先删除上一节建立的数据库mysql_shiyan,删除语句为DROP DATABASE mysql_shiyan;。在正式开始本实验内容之前,需要先下载相关数据库表,搭建好一个名为mysql_shiyan 的数据库(有三张表:department,employee,projec…

重力传感器算法概述!

一、核心技术 高精度重力测量技术&#xff1a; 无人机重力传感器的核心技术之一是能够高精度地测量重力加速度数据。这通常依赖于先进的传感器设计和制造工艺&#xff0c;以确保传感器具有高度的灵敏度和稳定性。 例如&#xff0c;中国船舶第七〇七研究所自主研发的低空重力…

炼码LintCode--数据库题库(级别:中等;数量:更新中~)--刷题笔记_03

目录 炼码LintCode--数据库题库&#xff08;级别&#xff1a;中等&#xff1b;数量&#xff1a;更新中~&#xff09;--刷题笔记_033617 更换连续两个人的座位&#xff08;case when&#xff09;题&#xff1a;sql&#xff1a;解释&#xff1a; 3615 数据中位数&#xff08;窗…

【stm入门学习SPI_铁头山羊系列教程】

stm入门学习SPI_铁头山羊教程 1.SPI总线1.电路结构与通信协议2.SPI的特点&#xff1a;3. 极性 相位4. 4中时钟模式5. 比特位的传输模式6.数据宽度 2. SPI引脚IO引脚初始化 1.SPI总线 1.电路结构与通信协议 主机向从机NSS引脚发送低电压&#xff0c;选中该从机。 主机通过向MOS…

RK3568平台开发系列讲解(platform虚拟总线驱动篇)实验:点亮一个LED

🚀返回专栏总目录 文章目录 一、设备树二、平台驱动三、应用沉淀、分享、成长,让自己和他人都能有所收获!😄 📢xxx 程序编写的主要内容为添加 LED 灯的设备树节点、在驱动程序中使用 of 函数获取设备节点中的属性,编写测试应用程序。 • 首先向设备树添加 LED 设备节点…

Spring Boot 与腾讯云 MySQL 监听 Binlog 数据变化,并使用 UI 展示页面效果

引言 在现代的分布式系统和微服务架构中&#xff0c;数据同步和变更监控是保证系统一致性和实时性的核心问题之一。MySQL 数据库的 binlog&#xff08;二进制日志&#xff09;功能能够记录所有对数据库的修改操作&#xff0c;如插入&#xff08;INSERT&#xff09;、更新&…

菜鸟驿站二维码/一维码 取件识别功能

特别注意需要引入 库文 ZXing 可跳转&#xff1a; 记录【WinForm】C#学习使用ZXing.Net生成条码过程_c# zxing-CSDN博客 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using static System.Net.…

PlantUML——时序图

PlantUML时序图 背景 时序图&#xff08;Sequence Diagram&#xff09;&#xff0c;又名序列图、循序图&#xff0c;是一种UML交互图&#xff0c;用于描述对象之间发送消息的时间顺序&#xff0c;显示多个对象之间的动态协作。时序图的使用场景非常广泛&#xff0c;几乎各行各…

算法——链表相交(leetcode23)

链表相交这题就是找出两个相交链表相交的节点并返回 如上图假设上方第一个节点是链表A的头结点下方第一个节点是链表B的头结点 解法有以下两种 方法一(移动长链表指针后同步移动两个链表的指针直至相等) 也就是先遍历链表A和链表B的长度接着得到链表A和B长度的差值然后领长链…

STM32单片机锁死

自己画了一块stm32f407板子&#xff0c;外部晶振用了25MHz&#xff0c;烧写了8MHz的程序&#xff0c;第一次烧写成功&#xff0c;第二次开始识别不到芯片&#xff0c;第一次烧写成功由于外部晶振为25Hz&#xff0c;芯片内频率计算器却是按照8MHz写的&#xff0c;所以得出最后的…

Windows文件资源管理器增强工具

引言&#xff1a; 资源管理器在我们使用电脑时是经常用到的&#xff0c;各种文件资源等的分类整理都离不开它。但是Windows Explorer确实不好用&#xff0c;不智能&#xff0c;不符合人体工程学。特别是在一些场合&#xff0c;在打开的一堆文件夹里&#xff0c;想从中找到自己要…

聚类中3个解空间的描述

深度学习中做分类任务时&#xff0c;我们常常根据最后的全连接层得到一组向量A&#xff08;比如&#xff1a;[0.9, 0.7, 0.2]&#xff09;&#xff0c;这组向量经过归一化得到向量B(比如&#xff1a;[0.5&#xff0c; 0.3&#xff0c; 0.2])&#xff0c;再根据B向量采用概率最大…

Empirical analysis of hardware-assisted GPU virtualization

​ 年份&#xff1a;2019 作者&#xff1a;Anshuj Garg 会议&#xff1a;ESCI 出版商&#xff1a;IEEE 摘要 本篇文章对vGPU虚拟化的性能开销、调度算法的影响、同构与异构工作负载的干扰效应&#xff0c;以及PCI直通与vGPU的性能差异进行了研究。结果表明&#xff0c;vGP…

Java面试题2024-Java基础

Java基础 1、 Java语言有哪些特点 1、简单易学、有丰富的类库 2、面向对象&#xff08;Java最重要的特性&#xff0c;让程序耦合度更低&#xff0c;内聚性更高&#xff09; 3、与平台无关性&#xff08;JVM是Java跨平台使用的根本&#xff09; 4、可靠安全 5、支持多线程 2、…