b2b2c-multishop.conf 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. server {
  2. # 根据实际需要,将端口改回成80 or 443(改为443要https证书),同时将b2b2c-multishop.mall4j.com改成真正的域名, 443端口的配置参考b2b2c-api
  3. listen 80;
  4. server_name b2b2c-multishop.mall4j.com;
  5. location / {
  6. # 商家端vue项目的路径存放到这里 /usr/share/nginx/html/multishop
  7. # 1.如果是docker部署的nginx,那么这个路径是docker里面的路径,
  8. # 服务器上的物理路径应该是 在docker-compose下的mall4j-nginx映射下 “./nginx/html:/usr/share/nginx/html” 也就是docker-compose的相对路径下的nginx/html文件夹
  9. # 2. 如果是非docker部署,就是服务器的物理路径
  10. # 如果location是/,那么root就要对应的代码路径咯
  11. # 如果location是/multishop,那么这个root就可以不用/multishop了,也就是/usr/share/nginx/html
  12. root /usr/share/nginx/html/multishop;
  13. # 如果location 是 / 那么对应的是try_files $uri $uri/ /;
  14. # 如果location 是 /multishop 那么对应的是try_files $uri $uri/ /multishop/;
  15. # 如果location 是 /xxx 那么对应的是try_files $uri $uri/ /xxx/;
  16. try_files $uri $uri/ /;
  17. add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
  18. add_header X-Frame-Options "SAMEORIGIN";
  19. add_header X-XSS-Protection "1; mode=block";
  20. add_header X-Content-Type-Options "nosniff";
  21. # 如果觉得有必要的话,可以增加Content-Security-Policy,不过里面的域名要自己确定增加哪些
  22. # add_header Content-Security-Policy "default-src 'self' wss://b2b2c-im.mall4j.com;img-src 'self' https://img.mall4j.com data: blob:; style-src 'self' 'unsafe-inline';script-src 'self' 'unsafe-inline';font-src 'self' data:;";
  23. # 不缓存html
  24. if ($uri ~* .*\.(?:html)$){
  25. add_header Cache-Control "no-store, no-cache";
  26. }
  27. }
  28. # 这里将/apis的请求都转发到了multishop.jar
  29. location /apis {
  30. # 将 /apis/a/b/c的url转换成 /a/b/c 去掉/apis的前缀
  31. rewrite ^/apis/(.*)$ /$1 break;
  32. # 8113端口是multishop.jar启动的端口
  33. # 这里因为是在docker,所以这个访问的是docker内部网络,非docker部署也可以用ip http://${ip}:8113;
  34. # 这里采用mall4j-multishop是因为docker内网,如果使用docker的话,应该是127.0.0.1或者是xxx.xxx.xxx.xxx的内网(推荐)/公网ip
  35. proxy_pass http://127.0.0.1:8113;
  36. add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
  37. proxy_cookie_path / "/; httponly; secure; SameSite=Lax";
  38. # 如果觉得有必要的话,可以增加Content-Security-Policy,不过里面的域名要自己确定增加哪些
  39. # add_header Content-Security-Policy "default-src 'self'; style-src 'self';script-src 'self';font-src 'self';";
  40. }
  41. }