我有一个简单的配置让nginx服务我的React应用程序:server {listen 80;root /usr/share/nginx/html;location / {try_files $uri $uri/ /index.html;}}我有路线/并登录.当我通过React-Router从localhost /登录到loca...

我有一个简单的配置让nginx服务我的React应用程序:
server {
listen 80;
root /usr/share/nginx/html;
location / {
try_files $uri $uri/ /index.html;
}
}
我有路线/并登录.当我通过React-Router从localhost /登录到localhost /时,一切正常.但是,当我在浏览器中键入localhost / login时,出现404错误.
确切地说,对于localhost / login,我在nginx控制台中得到“ /usr/share / nginx / html / login”失败(2:没有这样的文件或目录).
并且对于localhost / login /我得到的是“ /usr/share/nginx/html/login/index.html”,找不到(2:没有这样的文件或目录)
我不明白为什么Nginx会继续在/usr/share / nginx / html / login /中而不是/usr/share / nginx / html /中寻找index.html.有什么想法我做错了吗?
解决方法:
好的,我的不好,看来我只是搞砸了配置文件.
在我的Dockerfile中,我做了以下工作
COPY nginx/default.conf /etc/nginx/conf.default
而很明显,nginx不在conf.default文件中寻找配置.
所以我创建了nginx.conf文件:
events {
worker_connections 1024;
}
http {
server {
listen 80;
root /usr/share/nginx/html;
location / {
try_files $uri $uri/ /index.html;
}
}
}
并在Dockerfile中写道:
COPY nginx/nginx.conf /etc/nginx/nginx.conf
那解决了问题.感谢帮助!
本文标题为:reactjs-nginx尝试根据uri在目录中查找index.html


基础教程推荐
- Ajax校验用户名是否存在的方法 2023-02-23
- HTML iframe标签用法案例详解 2022-11-23
- layui 数据表格按钮事件绑定和渲染 2022-12-16
- vue3.x keep-alive不生效 2023-10-08
- vue组件,局部组件,全局组件,模板抽取 2023-10-08
- vue使用Swiper踩坑解决避坑 2023-07-10
- AJAX实现省市县三级联动效果 2023-02-23
- 关于Ajax中通过response在后台传递数据问题 2023-02-14
- 实现瀑布流布局的三种方式 2023-08-08
- ES6中async函数与await表达式的基本用法举例 2022-08-30