『贴代码』
技术分享
精选作品
优选问答
成长笔记
PasteSpider中关于Nginx的配置,安装PasteSpider之后查阅
尘埃 2024-08-03 2946 176 0 编辑
PasteSpider中的Nginx如何配置,及配置需要注意的点!

更多PasteSpider的操作介绍,请前往 PasteSpider操作文档


很多人是使用Nginx作为代理的,比如你安装了PasteSpider之后

image.png

一般不会使用加端口的模式进行访问吧,一般会挂载一个域名,比如http://spider.xxx.com/

甚至会给挂载一个https的

这里以https://spider.pastecode.cn为例


image.png


如上图所示,我安装后使用的是8006端口

由于外部访问是域名的模式,所以我这里其实8006不需要对外开放这个端口

则我的nginx的配置如下:

server {
  server_name spider.pastecode.cn;
  #charset koi8-r;
  #access_log  logs/pastecode.access.log main;
  location /api/ {
    proxy_pass http://127.0.0.1:8006/api/;
    proxy_set_header Host "$server_addr:$server_port";
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header referer "$server_addr:$server_port";
    proxy_http_version 1.1;
    client_max_body_size 20M;
    client_body_buffer_size 20M;
    proxy_set_header Connection "Keep-Alive";
    proxy_connect_timeout 600;
    proxy_send_timeout 600;
    proxy_read_timeout 600;
  }
  location /statushub {
    proxy_pass http://127.0.0.1:8006;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
  }
  location /swagger/ {
    proxy_pass http://127.0.0.1:8006/swagger/;
    proxy_set_header Host "$server_addr:$server_port";
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header referer "$server_addr:$server_port";
    proxy_http_version 1.1;
    proxy_set_header Connection "Keep-Alive";
    proxy_connect_timeout 600;
    proxy_send_timeout 600;
    proxy_read_timeout 600;
  }
  location / {
    root /spider/static/spider/web;
    proxy_set_header Host "$server_addr:$server_port";
    index index.html;
  }
  #location ~/web/(.*)$ {
  #        root /web/;
  #        error_page 404 https://www.abc.com/$1;
  #}
  error_page 404 /404.html;
  listen 443 ssl; # managed by Certbot
  ssl_certificate /etc/letsencrypt/live/spider.pastecode.cn/fullchain.pem; # managed by Certbot
  ssl_certificate_key /etc/letsencrypt/live/spider.pastecode.cn/privkey.pem; # managed by Certbot
  include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
  ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}
server {
  if ($host = spider.pastecode.cn) {
    return 301 https://$host$request_uri;
  } # managed by Certbot
  listen 80;
  server_name spider.pastecode.cn pastespider.pastecode.cn;
  return 404; # managed by Certbot
}

注意看

location /statushub

由于PasteSpider配置了实时通讯模块,就是管理页面中可以实时被通知

某些任务开始执行

某些任务执行成功

某些任务执行失败等信息

还有一个是

 client_max_body_size 20M; 

 client_body_buffer_size 20M;


由于在升级的时候,如果你使用PasteSpiderFile执行项目文件的同步,则需要考虑这个设置多大,才能使你的项目文件被上传到服务器上!


我上面的配置是PasteSpider的服务端和管理端的代码分开的

看location / { 和 location /api/ { 可以知道

如果是你们使用,一般2个是合并的,如下

server {
  server_name spider.pastecode.cn;
  #charset koi8-r;
  #access_log  logs/pastecode.access.log main;

  location /statushub {
    proxy_pass http://127.0.0.1:8006;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $remote_addr;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
  }

  location / {
    proxy_pass http://127.0.0.1:8006/;
    proxy_set_header Host "$server_addr:$server_port";
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header referer "$server_addr:$server_port";
    proxy_http_version 1.1;
    client_max_body_size 20M;
    client_body_buffer_size 20M;
    proxy_set_header Connection "Keep-Alive";
    proxy_connect_timeout 600;
    proxy_send_timeout 600;
    proxy_read_timeout 600;
  }

  #location ~/web/(.*)$ {
  #        root /web/;
  #        error_page 404 https://www.abc.com/$1;
  #}
  error_page 404 /404.html;
  listen 443 ssl; # managed by Certbot
  ssl_certificate /etc/letsencrypt/live/spider.pastecode.cn/fullchain.pem; # managed by Certbot
  ssl_certificate_key /etc/letsencrypt/live/spider.pastecode.cn/privkey.pem; # managed by Certbot
  include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
  ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}
server {
  if ($host = spider.pastecode.cn) {
    return 301 https://$host$request_uri;
  } # managed by Certbot
  listen 80;
  server_name spider.pastecode.cn pastespider.pastecode.cn;
  return 404; # managed by Certbot
}


在上面中我使用的是let`s encrypt 的证书模式,3个月过期,快到期的时候会自动续期,非常好用!

评论列表
尘埃
176 2946 0
快捷注册
热门推荐更多
PasteSpider
;
用户问答更多
07月份版本的内存占用比以前大了,也没有泄漏,啥情况?以前200MB,这个版本能到300MB
文档中的组织归属有些问题,啥时候看看,更新更新!
  • 已经升级了,主要是left join的查询的时候没有过滤,其实这个问题,多租户也是一样的!

PasteSpider的集群方式,我还是没太懂,啥时候出一个专题来讲解讲解?
  • b不难吧,就几个地址!

最新动态
  • 94.****.195 正在查看 文章列表页 !
  • 52.****.145 正在查看 正在查看笔记页面 !
  • 18.****.19 正在查看 正在查看笔记页面 !
  • 223.****.200 正在查看 在Docker中安装postgresql数据库! !
  • 39.****.238 正在查看 主页template !
  • 216.****.99 正在查看 CRUD的最佳实践,联动前后端,包含微信小程序,API,HTML等(二) !
  • 216.****.99 正在查看 文章列表页 !
  • 216.****.99 正在查看 多层级的排序和更新问题,看这篇就够了! !
  • 216.****.99 正在查看 文章列表页 !
  • 216.****.99 正在查看 案例分享,使用PasteForm实现地区勾选功能 !
  • 216.****.99 正在查看 PasteSpider部署工具介绍,为啥说是开发专属部署工具,看这篇就够了! !
欢迎加入QQ讨论群 296245685 [PasteSpider]介绍 [PasteForm]介绍 @2022-2023 PasteCode.cn 版权所有 ICP证 闽ICP备2021013869号-2