nginx启动失败 ,报404和 idea端口号被占用的解决办法

目录

nginx启动失败

使用nginx的几大场景

[关于nginx 启动 后,在页面通过访问设置好的端口号,页面显示 404 的原因](#关于nginx 启动 后,在页面通过访问设置好的端口号,页面显示 404 的原因)

端口号被占用


nginx启动失败

nginx 常常被用来反向代理服务器,作为前端和后端之前的请求(接口)的中转站。每当前端向后端发送请求时,都会先经过nginx服务器,拦截 最后转发给后端

使用nginx的几大场景
  • 作为服务器,部署前端项目
  • 统一访问端口

举一个例子:我们写的前端代码,每一个模块的端口号都不同的。比如商品管理,订单管理。但是对于用户来说,他们不在意这些端口号是8080还是8081,只希望记住一个的网址,就可以进入浏览。因此使用 统一访问端口号的好处在于,给用于提供一个简单,方便记忆的网址。而nginx 刚好是做这事的,可以设置统一端口号。

如图所示:

  • 解决并发问题

举一个例子:关于并发问题,任何一个已经上线的项目或者软件 都在解决这个问题,一旦他们遇到并发问题,也可以说是这个项目已经开始盈利了。并发问题:大量用户同一时间访问同一个页面或者执行相同的操作时,造成页面卡顿,一部分人无法执行下一步操作甚至服务器崩溃。这受限于服务器访问人次或代码等因素。比如 你现在开发一个聊天软件,软件上线后同一时间有3000人次访问,假设服务器的访问量只能容纳2000人,超过的人无法访问,这就造成服务器崩溃,而nginx 可以恰好可以解决这一个问题。一旦你使用nginx 至少可以解决10多万的同时访问量


关于nginx 启动 后,在页面通过访问设置好的端口号,页面显示 404 的原因
  • 首先关闭 当前 nginx 服务 ,防止 之后的操作对 重启nginx 服务操作影响
  • 其次 使用管理员权限打开命令行,切换到nginx 的安装目录

1 nginx .conf 文件中你添加的设置,语法不对,需要修改

复制代码
// 检查nginx .config文件,语法是否正常
nginx -t 

1.1重点关注 root 对应的前端路径(前端代码所在的文件夹路径) 是否有格式问题

举一个例子:当你访问 http://localhost/index.html 时,nginx 会尝试读取 D:/nginx/html/index.html,但这个路径不存在,直接返回 404。

复制代码
server {
    listen 80;        # 监听80端口
    server_name localhost;  # 访问域名

    # 错误:实际前端文件放在 D:/nginx/static ,却写错成 D:/nginx/html
    root D:/nginx/html;  

    location / {
        index index.html;
    }
}

1.2 index 指令问题:未配置默认首页

index 指令的作用是指定访问目录时默认加载的文件(比如 index.html、index.htm)。若未配置该指令,或配置的文件不存在,访问 http://localhost/(根路径)时,nginx 不知道该加载哪个文件,直接返回 404。

2 修改后,没有重新启动nginx 服务

2.1强制 关闭nginx 服务

复制代码
taskkill /F /IM nginx.exe

2.2 查看nginx 服务是否存在

复制代码
tasklist | findstr nginx

3 重启nginx 服务

在nginx 的安装目录通过命令,重启nginx

复制代码
nginx -s reload

端口号被占用

端口号被占用的解决办法

背景:假设你后端服务器的端口号是32800 ,当你启动项目后,控制台日志显示 32800端口号被占用

1按Win+R,输入cmd并回车,查看 32800端口号对应的进程 ID (PID)

复制代码
netstat -ano | findstr :32800

2 关闭 对应的进程

复制代码
taskkill /f /pid 32800
相关推荐
雪可问春风1 天前
docker环境部署
运维·docker·容器
lwx9148521 天前
Linux-Shell算术运算
linux·运维·服务器
翻斗包菜1 天前
PostgreSQL 日常维护完全指南:从基础操作到高级运维
运维·数据库·postgresql
somi71 天前
ARM-驱动-02-Linux 内核开发环境搭建与编译
linux·运维·arm开发
海的透彻1 天前
nginx启动进程对文件的权限掌控
运维·chrome·nginx
路溪非溪1 天前
Linux驱动开发中的常用接口总结(一)
linux·运维·驱动开发
航Hang*1 天前
第3章:Linux系统安全管理——第2节:部署代理服务
linux·运维·服务器·开发语言·笔记·系统安全
北方的流星1 天前
华三网络设备的路由重定向配置
运维·网络·华三
河南博为智能科技有限公司1 天前
蓄电池在线监测系统-守护数据中心安全防线
运维·边缘计算
SkyWalking中文站1 天前
使用 TraceQL 查询 SkyWalking 和 Zipkin 链路追踪数据并在 Grafana 中可视化
运维·grafana·监控