Nginx 是一款高性能的开源 Web 服务器软件

文章推荐

1 作为程序员,开发用过最好用的AI工具有哪些?
2 Github Copilot正版的激活成功,终于可以chat了
3 idea,pycharm等的ai assistant已成功激活
4 新手如何拿捏 Github Copilot AI助手,帮助你提高写代码效率
5 Jetbrains的ai assistant已经激活成功,好用!

文章正文

Nginx 是一款高性能的开源 Web 服务器软件,它也可以用作反向代理服务器、负载均衡器和 HTTP 缓存等。以下是一个详细的 Nginx 教程,涵盖了 Nginx 的安装、基本配置、常用功能和性能优化等方面。

1. 安装 Nginx

Ubuntu / Debian:
sudo apt update
sudo apt install nginx
CentOS / RHEL:
sudo yum install epel-release
sudo yum install nginx
启动 Nginx 服务:
sudo systemctl start nginx
设置 Nginx 开机启动:
sudo systemctl enable nginx

2. 基本配置

Nginx 的主要配置文件是 /etc/nginx/nginx.conf。下面是一个简单的 Nginx 配置示例:

worker_processes  1;events {worker_connections  1024;
}http {server {listen 80;server_name example.com;root /var/www/html;location / {try_files $uri $uri/ =404;}}
}

3. 虚拟主机配置

Nginx 支持虚拟主机配置,可以用来托管多个网站。

http {server {listen 80;server_name example.com;root /var/www/example.com;location / {try_files $uri $uri/ =404;}}server {listen 80;server_name anotherdomain.com;root /var/www/anotherdomain.com;location / {try_files $uri $uri/ =404;}}
}

4. 反向代理配置

Nginx 可以用作反向代理服务器,将请求转发给后端服务器。

http {server {listen 80;server_name example.com;location / {proxy_pass http://backend_server;}}
}

5. 负载均衡配置

Nginx 可以用来实现负载均衡,将请求分发给多个后端服务器。

http {upstream backend_servers {server backend1.example.com;server backend2.example.com;}server {listen 80;server_name example.com;location / {proxy_pass http://backend_servers;}}
}

6. HTTPS 配置

Nginx 可以配置 HTTPS,提供加密连接和安全传输。

server {listen 443 ssl;server_name example.com;ssl_certificate /path/to/certificate.crt;ssl_certificate_key /path/to/private.key;location / {proxy_pass http://backend_server;}
}

7. HTTP 缓存配置

Nginx 支持 HTTP 缓存,可以提高网站的性能。

http {server {listen 80;server_name example.com;location / {proxy_cache cache_zone;proxy_cache_valid 200 1h;proxy_cache_key $request_uri;proxy_pass http://backend_server;}}
}

8. 日志配置

Nginx 可以配置访问日志和错误日志。

http {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;error_log   /var/log/nginx/error.log;
}

9. 安全配置

Nginx 可以配置安全相关的设置,如限制请求速率、禁止访问敏感目录等。

http {limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;server {location / {limit_req zone=one burst=5;deny /admin;}}
}

10. 性能优化

Nginx 可以进行性能优化,如调整 worker_processes、worker_connections 和 keepalive_timeout 等参数。

worker_processes  auto;
worker_connections  1024;
keepalive_timeout  65;

这些是 Nginx 的基础教程,覆盖了安装、基本配置、常用功能和性能优化等方面。随着你的使用和学习深入,你可以进一步探索 Nginx 的高级功能和更复杂的配置。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL——DML对表中数据的操作

# 创建数据库 create database if not exists db_BigData default character set gb2312 default collate gb2312_chinese_ci; # 创建表 create table if not exists db_BigData.stu (id int auto_increment primary key comment 主键ID,name var…

navicat15设置字类型为decimal的字段默认值失败

可能是由于我使用的破解版的原因,使用sql可以设置成功,但是navicat可视化工具就不行, sql如下: alter table <表名> alter column <字段名> set default <默认值> ;

Windows内核--DMA

DMA工作期间CPU可以访问内存吗? DMA工作期间&#xff0c;占用内存访问总线&#xff0c;和CPU访问内存总线是冲突的。DMA并不是完全和CPU工作并行&#xff0c;如果CPU只是在对内部寄存器操作&#xff0c;没有访问内存&#xff0c;CPU可以和DMA同时工作。一旦CPU也需要访问内存&…

详解CSS(二)

目录 1.背景属性 1.1背景颜色 1.2背景图片 1.3背景平铺 1.4背景位置 1.5背景尺寸 2.圆角矩形 3.元素的显示模式 3.1行内元素/内联元素&#xff08;Inline element&#xff09; 3.2块级元素&#xff08;Block-level element&#xff09; 3.3行内块元素&#xff08;In…

配置 tmux 状态栏

如果你希望 script_status.sh 脚本用于检测是否能正常上网,并将结果显示在 tmux 状态栏中,可以编写一个脚本来执行此操作。下面是如何实现这一功能的详细步骤: 编写 script_status.sh 脚本 首先,创建或编辑 script_status.sh 脚本,使其能够检测互联网连接状态。可以通过…

【leetcode面试经典150题】-80. 删除有序数组中的重复项 II

【leetcode面试经典150题】-80. 删除有序数组中的重复项 II 1 题目介绍2 个人解题思路2.1 代码2.2 思路 3 官方题解 1 题目介绍 给你一个有序数组 nums &#xff0c;请你 原地 删除重复出现的元素&#xff0c;使得出现次数超过两次的元素只出现两次 &#xff0c;返回删除后数组…

d20(184-190)-勇敢开始Java,咖啡拯救人生

目录 网络通信 网络通信三要素&#xff08;IP地址&#xff0c;端口号&#xff0c;协议 IP地址 InetAddress 端口号 协议 传输层的两个通信协议 UDP通信 java.net.Datagramsocket类 客户端 服务端 UDP通信多收多发 客户端 服务端 TCP通信 java.net.Socket类 客…

【全网最全】2024电工杯数学建模A题21页初步参考论文+py代码+保奖思路等(后续会更新)

您的点赞收藏是我继续更新的最大动力&#xff01; 一定要点击如下的卡片链接&#xff0c;那是获取资料的入口&#xff01; 【全网最全】2024电工杯数学建模A题21页初步参考论文py代码保奖思路等&#xff08;后续会更新成品论文&#xff09;「首先来看看目前已有的资料&#x…

企业应考虑的优秀云安全措施

作为云客户&#xff0c;企业有责任确保正确使用他们提供的工具来保证数据和应用程序的安全。让德迅云安全来跟大家一起研究一些典型企业应该考虑的优秀云安全措施。 在数据安全和隐私方面&#xff0c;企业是否在努力跟上疫情的发展?企业不是一个人。就像多年以前&#xff0c;C…

【栈】Leetcode 224. 基本计算器【困难】

基本计算器 给你一个字符串表达式 s &#xff0c;请你实现一个基本计算器来计算并返回它的值。 **注意:**不允许使用任何将字符串作为数学表达式计算的内置函数&#xff0c;比如 eval() 。 示例 1&#xff1a; 输入&#xff1a;s “1 1” 输出&#xff1a;2 示例 2&…

解决小皮面版搭建php网站数据库连接不了

首先进入mysql bin目录下 并执行cmd mysql -u root -pCREATE USER userlocalhost IDENTIFIED BY pass;GRANT ALL PRIVILEGES ON *.* TO userlocalhost;GRANT SELECT, INSERT, UPDATE ON database_name.* TO xxwlocalhost;FLUSH PRIVILEGES;select host ,user from mysql.user…

Android 自定义Adapter关键函数getView性能最优使用

文章目录 1、自定义Adapter关键函数getView()标准写法2、布局文件list_item_user.xml3、解释3、示例使用4、结果5、进一步优化和扩展5.1. **优化性能&#xff1a;ViewHolder模式**5.2. **处理多种类型的视图**5.3. **使用RecyclerView.Adapter** 6、RecyclerView使用示例7、结果…

DOS学习-目录与文件应用操作经典案例-del

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一.前言 二.使用 三.案例 一.前言 DOS系统的del命令是一个用于删除文件的命令行工具。以下…

使用公共Wi-Fi所面临的风险有哪些

尽量不要使用公共wifi做转账、支付、修改密码等金融性或私密性的操作。公共Wi-Fi网络存在许多风险。尽管商家可能认为他们为顾客提供了一个有价值的服务&#xff0c;很多人也认为在星巴克噼里啪啦的乱敲键盘非常小资&#xff0c;但其实这些网络的安全性可能存在极大的漏洞&…

【sass插值语句 #{}简介以及使用方法】

Sass 中的插值&#xff08;Interpolation&#xff09;是一种强大的特性&#xff0c;它允许你在 Sass 代码中嵌入变量、选择器、属性名或任何其他 Sass 表达式&#xff0c;并动态地生成 CSS 代码。插值通过 #{} 语法来实现。 Sass 插值简介 Sass 插值允许你创建可动态生成内容…

安卓12aosp mtp屏蔽内部存储显示,只展示特定文件夹和文件类型

系统&#xff1a;安卓12 屏蔽sd卡/内存存储显示 packages/services/Mtp/src/com/android/mtp/MtpService.java 修改如下&#xff0c;屏蔽了内部存储&#xff0c;如果需要屏蔽sd卡也可以根据这里做修改&#xff1a; private void addStorage(StorageVolume volume) {Log.v(TAG,…

[GStreamer] gst_element_link 及 pad 在继承体系中如何存在

前言&#xff1a; pad 是每个 element实例 都有的&#xff0c;是 elemenet 之间沟通的代理人&#xff0c;没有 pad 的 element 没法于其他element交流。 考虑到gstreamer存在继承体系&#xff0c;那么如果继承类element不在init函数里创建pad&#xff0c;那么在gst_element_l…

51打开工程,发现cannot read project file问题

解决办法&#xff1a; 1、路径太长&#xff0c;可以在桌面重新创建一个文件夹&#xff0c;把所有的文件都移动到新的文件夹中 2、创建工程的时候&#xff0c;都勾选上&#xff0c;就没问题

OracleDG原理

一、DataGuard架构介绍 1、基本介绍 在DG环境中&#xff0c;至少会有两个数据库&#xff0c;一个数据库处于Open状态&#xff0c;对外提供服务&#xff0c;这个数据库叫做primary Database。第二个数据库处于恢复状态&#xff0c;叫做Standby Database。运行时Primay Databas…

vue从入门到精通(四):MVVM模型

一,MVVM MVVM&#xff08;Model–view–viewmodel&#xff09;是一种软件架构模式。MVVM有助于将图形用户界面的开发与业务逻辑或后端逻辑&#xff08;数据模型&#xff09;的开发分离开来。详见MVVM 二,Vue中的MVVM Vue虽然没有完全遵循 MVVM 模型&#xff0c;但是 Vue 的设…