部署Nginx,配置文件

重启nginx

cd /data/server/nginx/sbin
./nginx -s reload

#user  nobody;
worker_processes  1;  #nginx进程数,建议按照cpu数目来指定,一般为它的倍数。
worker_rlimit_nofile 65535;
events {
    worker_connections  1024;  #单个后台worker process进程的最大并发链接数  
}


http {
    include       mime.types;   #设定mime类型,类型由mime.type文件定义  
    default_type  application/octet-stream;

    #sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件,
    #对于普通应用,必须设为 on,
    #如果用来进行下载等应用磁盘IO重负载应用,可设置为 off,
    #以平衡磁盘与网络I/O处理速度,降低系统的uptime
    sendfile  on;
    keepalive_timeout  65;  #用于设置客户端连接保持活动的超时时间,在超过这个时间之后服务器会关闭该链接。
    
 server {
        listen       80;
        server_name  localhost;

        location / {
            root   /data/front/equip-h5;
            index index.html index.htm;
        }
        
	location /prod-api/ {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://121.196.227.25:8083;
        rewrite "^/prod-api/(.*)$" /$1 break;
    }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }


}
server {
    listen       8081;
    server_name  121.196.227.25;

    location / {
        root   /data/front/dist;
        try_files $uri $uri/ /index.html;
        index index.html index.htm;
    }


    location /prod-api/ {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header REMOTE-HOST $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://121.196.227.25:8082;
	rewrite "^/prod-api/(.*)$" /$1 break;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }

}


server{
	listen       8082;
        server_name  121.196.227.25;

        location / {
            root   /data/project/equip-manage/backend/web;
            index index.php index.html index.htm;

	    if (!-e $request_filename) {
                rewrite ^/(.*)$ /index.php/$1 last;
                break;
            }

	}

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

       location ~ \.php {
            root  /data/project/equip-manage/backend/web;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
	
    }

server{
        listen       8083;
        server_name  121.196.227.25;

        location / {
            root   /data/project/equip-manage/frontend/web;
            index index.php index.html index.htm;

            if (!-e $request_filename) {
                rewrite ^/(.*)$ /index.php/$1 last;
                break;
            }

        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

       location ~ \.php {
            root  /data/project/equip-manage/frontend/web;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

    }


}

### Vue 项目部署Nginx配置文件示例 在将 Vue 单页应用 (SPA, Single Page Application) 部署Nginx 时,需要确保 Nginx 能够正确处理前端路由请求并将所有未匹配的路径重定向回 `index.html` 文件。以下是详细的配置方法以及一个完整的配置文件示例。 #### 创建新的 Nginx 配置文件 在 Ubuntu 系统上,可以按照以下方式创建一个新的配置文件用于 Vue 项目的部署: ```bash sudo nano /etc/nginx/sites-available/vue_project ``` 完成编辑后,通过符号链接将其启用并放置于 `sites-enabled` 目录下[^1]: ```bash sudo ln -s /etc/nginx/sites-available/vue_project /etc/nginx/sites-enabled/ ``` #### Nginx 配置文件示例 下面是一个适用于 Vue SPA 应用的标准 Nginx 配置文件示例: ```nginx server { listen 80; server_name your-domain.com; # 替换为实际域名或 IP 地址 root /path/to/your/vue-project/dist; # Vue 构建后的 dist 文件夹路径 index index.html; location / { try_files $uri /index.html; # 将所有未匹配的路径重定向到 index.html } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } } ``` 上述配置的关键部分在于 `try_files $uri /index.html` 这一行,它会告诉 Nginx 对于任何找不到的实际资源(例如 `/about` 或 `/contact`),都返回根目录下的 `index.html` 文件。这使得 Vue Router 可以正常工作。 #### 测试与重启 Nginx 在修改完配置文件之后,建议先测试 Nginx 配置是否有语法错误: ```bash sudo nginx -t ``` 如果一切正常,则可以通过以下命令重新加载 Nginx 配置而无需完全停止服务: ```bash sudo systemctl reload nginx ``` 或者使用更快速的方式停止和启动 Nginx[^2]: ```bash sudo nginx -s quit && sudo nginx ``` 这样即可使新配置生效。 --- ### 注意事项 - **构建生产环境版本**:在部署之前,请确保已经运行了 `npm run build` 命令来生成优化过的静态文件,并将这些文件存放在指定的 `dist` 文件夹中。 - **HTTPS 支持**:为了提高安全性,推荐为站点设置 HTTPS 认证。可借助 Let's Encrypt 提供免费 SSL/TLS 证书实现这一目标。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值