当前位置:   article > 正文

nginx下载安装到部署上线(保姆级别教程)_nginx压缩包下载

nginx压缩包下载

1、拥有前后端项目,虚拟机(能联网)

检测虚拟机是否有网络

第一步

ip addr

 第二步

ping www.baidu.com

 2、下载nginx

2、1官网下载

nginx: download,选择需要的版本,建议用稳定版

 2、2存进虚拟机中

将下载好的nginx-1.22.1.tar.gz文件放到虚拟机中,通过xftp或者其他工具(放在哪个位置都可以,自己找得到就行)

3、安装使用nginx所需环境

依次执行以下命令,安装需要的包文件

yum install gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

4、安装和配置nginx

4.1、解压nginx压缩包

tar -zxvf nginx-1.22.1.tar.gz

4.2、进入解压后的压缩包

输入  ls  查看会有一个configure 文件,在此目录下,依次执行以下命令

./configure
make
make install

4.3、进入默认安装地址

cd /usr/local/nginx

里面有这些文件

进入sbin文件

cd sbin

 运行nginx

./nginx

浏览器输入你虚拟机的ip地址,会进入下图所示页面,表示运行成功

 5、配置nginx

5、1上传前端文件

npm run build

打包前端代码(我这里是vue)放进以下目录,建议放这里

 5、2进入以下目录配置conf文件

主要修改的是35行的server文件

  1. server {
  2. # 需要监听的端口,前端页面在80端口展示(可以改)
  3. listen 80;
  4. # 一样写,不用改
  5. server_name localhost;
  6. # 需要的
  7. location / {
  8. # 前端dist文件所在目录
  9. root html/dist;
  10. # 照抄
  11. index index.html index.htm;
  12. # 防止路由刷新404,照抄
  13. try_files $uri $uri/ @router;
  14. }
  15. # 照抄
  16. location @router{
  17. rewrite ^.*$ /index.html last;
  18. }
  19. # 后面会解释
  20. location /api/ {
  21. # 后端接口地址
  22. proxy_pass http://xxxxxx:8000/;
  23. # 重写路径
  24. rewrite ^.+api/?(.*)$ /$1 break;
  25. }
  26. #error_page 404 /404.html;
  27. # redirect server error pages to the static page /50x.html
  28. #
  29. error_page 500 502 503 504 /50x.html;
  30. location = /50x.html {
  31. root html;
  32. }
  33. # proxy the PHP scripts to Apache listening on 127.0.0.1:80
  34. #
  35. #location ~ \.php$ {
  36. # proxy_pass http://127.0.0.1;
  37. #}
  38. # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
  39. #
  40. #location ~ \.php$ {
  41. # root html;
  42. # fastcgi_pass 127.0.0.1:9000;
  43. # fastcgi_index index.php;
  44. # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
  45. # include fastcgi_params;
  46. #}
  47. # deny access to .htaccess files, if Apache's document root
  48. # concurs with nginx's one
  49. #
  50. #location ~ /\.ht {
  51. # deny all;
  52. #}
  53. }

 5、3配置说明

这是我的前端反向代理配置

  1. export default defineConfig({
  2. plugins: [vue()],
  3. server: {
  4. proxy: {
  5. '/api': {
  6. target: 'http://127.0.0.1:8000',
  7. changeOrigin: true,
  8. rewrite: (path) => path.replace(/^\/api/, '')
  9. }
  10. }
  11. },
  12. })

后端没有/api开头的接口,前端的反向代理是把带有/api的请求代理到8000端口,因为用了rewrite重写了/api为空字符串,所以真正访问的接口没有/api

前端的baseurl带有/api

后端接口没有/api

就这么写

  1. location /api/ {
  2. # 后端接口地址
  3. proxy_pass http://xxxxxx:8000/;
  4. # 重写路径
  5. rewrite ^.+api/?(.*)$ /$1 break;
  6. }

 5、4配置完conf文件后

重新启动nginx

  1. ./nginx //启动nginx
  2. ./nginx -s stop //终⽌nginx
  3. ./nginx -s reload //重新加载nginx.conf配置⽂件

记得打开端口,或者关闭防火墙

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/264462
推荐阅读
相关标签
  

闽ICP备14008679号