当前位置: 首页 > news >正文

nginx部署前端项目(linux、docker)

引言

CentOS 7系统上使用docker安装nginx,使用nginx部署一个由Vue开发、打包的项目

docker安装nginx

这里不多赘述,直接上docker-compose.yml代码

 nginx:
   container_name: nginx
   image: nginx:1.27.2
   ports:
     - "80:80"
   volumes:
     - /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
     - /docker/nginx/conf/conf.d:/etc/nginx/conf.d
     - /docker/nginx/html/dist:/etc/nginx/html
     - /docker/nginx/logs:/var/log/nginx
   networks:
     - myNetwork

需要注意的是容器卷里的/docker/nginx/html/dist,到时候部署前端项目时把dist文件夹直接放到/nginx/html文件夹里就行

nginx部署

前端打包的dist文件夹直接放到/nginx/html目录里
然后看nginx.conf的代码

# 此处注意用户不能是别的, 否则会报403错误
user  root;
worker_processes  auto;

error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    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;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;


    server {
	    listen       80;
	    listen  [::]:80;
	    server_name  localhost;
	    
	    location / {
	    	#此处路径对应nginx容器内的/etc/nginx/html,所以需要将容器卷dist挂载到容器内的html
	        root html;
	        index index.html index.htm;
	    }
	
	}
}

常见问题

404: 可能是容器内的项目文件夹html为空, 可能是容器卷挂载错误
403: 禁止访问index.html,两种情况:1.可能是容器内的项目文件夹html不存在index.html,可能是容器卷挂载错误;2.可能是权限问题,需要将nginx.conf开头的用户改为root: user root
500:需要自行排查

查看日志的两种方式

docker logs nginx
cat /nginx/logs/error.log

相关文章:

  • Go 语言标准库中reflect模块详细功能介绍与示例
  • 从替代到超越,禅道国产化替代解决方案2.0发布!
  • 【剪辑_BGM 整合】
  • SQLite - C/C++编程接口详解
  • ner任务思路收集_基于规则匹配器
  • CPQ报价系统 | 机加工CPQ选型报价解决方案
  • Avro 批量转换成 Json 文件
  • 二维数组参数的五种形式
  • 追溯初心:记录、分享与交流的动力之源
  • 高通SDX35:atomic notifier内核通知链实例
  • AI Agent浪潮下,昇腾与科大讯飞携手开辟AI落地“新航路”
  • PEmicro Multilink FX调试踩坑
  • [已解决]DaisyUI覆盖进度条样式,导致进度条显示异常
  • bluecode-螺旋阵列的神秘艺术
  • 从头开始学C语言第三十五天——指针函数、递归函数
  • 修改菜品-02.代码开发
  • Copilot完全指南:AI编程助手的革命性实践
  • WEB或移动端常用交互元素及组件 | Axure / 元件类型介绍(表单元件、菜单和表格 、流程元件、标记元件)
  • 口腔种植全流程AI导航系统及辅助诊疗与耗材智能化编程分析
  • TDengine 中的命名与边界
  • 广州最新疫情公布/今日头条搜索优化怎么做
  • 莆田做鞋有没有网站看/sem竞价广告
  • 网站建设制作设计营销 上海/seo包括什么
  • 新疆生产建设兵团工信委网站/北京关键词优化服务
  • 只有做推广才能搜索到网站吗/快速排名优化推广排名
  • 在线代理访问/向日葵seo