NGINX 到底是什么?
如果你是初学者你就理解为这是 一个中间件 就可以了。作用为 映射 。
用户→nginx→应用服务
首先:下载!
现在不要再百度搜索了, 直接在官网下载,哪一个版本都可以。
(一个电脑可以下好多不同版本的NGINX,不用纠结版本)
点击 以上跳转到下载页面 或者( https://nginx.org/en/download)
下载完成后,直接解压就可以了!
双击 nginx.exe (会出现一个黑框一闪就没有了,别担心,这说明就已经成功启动了)
入门版需要了解的
- conf : 配置文件的目录
- html :静态html
- logs :日志文件
重量级嘉宾来了!
配置文件结构:
conf 里 nginx.conf 用记事本打开!
以下是默认的 nginx.conf ,看起来很复杂,其实一半都是注释 (#后面是注释,不用管的)
为了容易理解,我们看以下代码
server {
listen 7980;
server_name localhost;
location / {
root html;
index suzhou.html suzhou.htm;
}
-
这个配置表示 Nginx 监听 7980 端口,当接收到对localhost域名的请求时,会将请求的根目录(
/
)指向的是安装NGINX 文件夹下的里的html文件夹。 -
默认打开的是 http://localhost:7980/suzhou.html 实际上就是上述描述的文件夹里的suzhou.html
listen 指令:
- 用于指定 Nginx 监听的端口和(可选)IP 地址。这里是7980 你可以根据你的情况任意改,但是要注意不能超过65535
- 这是决定 Nginx 从哪里接收客户端请求的关键指令。
server_name 指令:
- 用于设置虚拟服务器的名称,通常是域名。当客户端请求的域名与
server_name
匹配时,Nginx 会使用对应的server
块来处理请求。 - 这个名字你也可以任意写!
location 指令:
- 用于定义请求的 URL 路径与服务器资源的映射关系。
- 例如
location / { … }
表示匹配所有以/
开头的请求路径,也就是网站的根路径。 - 你也可以这么写 /test , /suzhou , /任意 (这什么意思呢)
-
当你在浏览器输入 http://localhost:7980/suzhou.html 时跳转 !一般/后面没有写的时候,不用输入/直接回车就可以
-
前提是 你要打开的文件在HTML文件夹里存在的!
-
HTTP 模块:
-
Nginx 的 HTTP 模块是其核心模块,负责处理 HTTP 请求。它提供了诸如请求处理、响应生成、缓存等功能。例如,在 HTTP 模块中可以配置缓存策略,通过
proxy_cache
指令来设置缓存的位置、有效期等参数,以减少对后端服务器的重复请求,提高网站的响应速度。
-
SSL 模块:
-
随着网络安全的重要性日益增加,学习 Nginx 的 SSL 模块也很重要。这个模块用于在 Nginx 上配置 HTTPS 加密访问。需要了解如何生成 SSL 证书(可以通过 Let's Encrypt 等工具免费获取),以及如何在 Nginx 中配置证书来启用 HTTPS。例如,通过
listen 443 ssl;
指令来监听 443 端口用于 HTTPS 通信,并且配置ssl_certificate
和ssl_certificate_key
指令来指定 SSL 证书和私钥的位置。
简单的运维与排错
-
日志查看与分析:
-
Nginx 会生成访问日志和错误日志,用于记录客户端的访问情况和服务器在处理请求过程中出现的错误。在logs 里可以查看!
-
-
配置检查与重载:
-
建议每写完一个html文件,放在html文件夹里以后,
-
在NGINX所在的文件夹里启动cmd
-
小米笔记本为例 在安装NGINX文件夹里 鼠标右键 就有一个在终端打开
-
其他电脑:选中文件夹地址栏输入cmd 点击回车!
-
nginx -t
:用于检查 Nginx 配置文件的语法是否正确。如果配置正确,会显示相应的成功信息;若有错误,则会提示错误位置及原因 。
这样是没有问题的,如果报错误他会显示第几行,什么错误的
比如这样?
第40行有一个语法错误 “/” 前后,这个时候检查有没多余的空格!
常用命令:(以下都是很重要的命令!)
start nginx
:在后台启动 Nginx 服务,不会锁定当前控制台窗口,启动后可继续在该窗口执行其他命令。
nginx -s stop
:快速停止 Nginx 服务,可能不会保存相关信息。
nginx -s quit
:完整有序地停止 Nginx 服务,并保存相关信息。
nginx -s reload
:当修改了 Nginx 的配置文件后,使用此命令可以重新加载配置,使新配置生效,无需停止服务。
nginx -t
:用于检查 Nginx 配置文件的语法是否正确。如果配置正确,会显示相应的成功信息;若有错误,则会提示错误位置及原因 。
总结!(如果直接想知道修改哪里看这个就可以)
你在 nginx.conf 里做一些改变,通过修改 http 里的 server 模块,代理任何你想显示的网站,
http 里可以有好多server ,你想添加的话,直接复制我以下的代码
复制到http 里
修改 server_name ,listen , root /var/www/html , index index.html;
listen 就是 你想用的端口号
location 里就是 你想访问的网页 位置
root 后面就是 位置
index index.html; index就是你想看的html 比如 你有一个suzhou.html
改成 index suzhou.html;
server {
listen 7980;
server_name localhost;
location / {
root html;
index suzhou.html suzhou.htm;
}