当前位置: 首页 > 工具软件 > Webman > 使用案例 >

webman的在宝塔中的nginx配置

松灿
2023-12-01
  • 1、正常添加站点即可,选择静态站点,无需选择php版本
  • 2、打开站点的配置–配置文件,把默认的配置全部删除
  • 3、写入以下配置规则
upstream web {
    server 127.0.0.1:8787;
    keepalive 10240;
}

server {
  server_name 域名;
  listen 80;
  access_log  /www/wwwlogs/域名.log;
  root /www/wwwroot/项目文件夹/public;

  location ^~ / {
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header Host $host;
      proxy_set_header X-Forwarded-Proto $scheme;
      proxy_http_version 1.1;
      proxy_set_header Connection "";
      if (!-f $request_filename){
        proxy_pass http://web;
      }
  }
}

  • 4、通过命令行,运行项目即可
  • 5、如果安装了webman/domain,需要开启按域名访问应用,除了做以下该插件的配置
//webman/domain的配置项内容参考
<?php
return [
    'enable' => true,
    // 多应用绑定关系
    'bind' => [
        'xxx.com' => '', // 不属于任何应用
        'api.xxx.com'  => 'api', // 绑定到api应用
        'admin.xxx.com'  => 'admin', // 绑定到admmin应用
    ],
    // 绑定关系,域名,应用的验证逻辑,返回true时认为符合绑定关系,反之不符合返回404
    'check' => function ($bind, $domain, $app) {
        return isset($bind[$domain]) && ($bind[$domain] === $app || $bind[$domain] == '');
    }
];
  • 6、还需要额外添加一个nginx配置文件,在/www/server/panel/vhost/nginx目录新建任意名称的.conf文件,这里的文件会自动读取,不需要额外再配置,文件内容如下
upstream api {
  server 127.0.0.1:8787;
  keepalive 10240;
}
server {
    listen 80;
    server_name api域名;
    access_log off;
    root /www/wwwroot/项目文件夹/public;

    location / {
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header Host $host;
      proxy_http_version 1.1;
      proxy_set_header Connection "";
       if (!-f $request_filename){
          rewrite ^/(.*)$ /api/$1 break;
          proxy_pass http://api;
       }
    }
}
  • 7、这样的话,访问api.xx.com就相当于直接访问api目录应用了
 类似资料: