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
相关推荐
machunlin~2 小时前
centos 系统安装相关
linux·运维·docker·centos
hweiyu002 小时前
Linux 命令:bzip2
linux·运维·服务器
踏浪无痕2 小时前
夜莺告警引擎内核:一个优雅的设计
运维·后端·go
爱吃生蚝的于勒2 小时前
【Linux】深入理解软硬链接
linux·运维·服务器·c语言·数据结构·c++·算法
程序终结者2 小时前
CDH6.3.2集群docker容器化离线部署客户端parcel+配置全流程详解
运维·docker·容器
全栈工程师修炼指南3 小时前
Nginx | HTTP 反向代理:当缓存失效时如何减轻后端(上游)服务压力?
运维·网络协议·nginx·http·缓存
prettyxian3 小时前
【Linux】内核编织术:task_struct的动态网络
linux·运维·服务器
Danileaf_Guo3 小时前
OSPF路由引入的陷阱:为何Ubuntu上静态路由神秘消失?深挖FRR路由分类机制
linux·运维·网络·ubuntu·智能路由器
张某人的胡思乱想3 小时前
windows远程ubuntu
linux·运维·ubuntu