当前位置:论坛首页 > Linux面板 > 求助

【待反馈】为什么给api单独配置8082端口一直显示404呢

发表在 Linux面板2023-3-8 06:57 [复制链接] 9 2857

为什么给api单独配置8082端口一直显示404呢
server {
  listen 8082;
   server_name www.a.com a.com;
           index index.php;
   location /api {
   alias /www/wwwroot/a.com;
   }
           #PHP-INFO-START  PHP引用配置,可以注释或修改
    include enable-php-73.conf;
    #PHP-INFO-END

    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
    include /www/server/panel/vhost/rewrite/www.a.com.conf;
    #REWRITE-END
}

使用道具 举报 只看该作者 回复
发表于 2023-3-8 09:55:19 | 显示全部楼层
本帖最后由 堡塔运维小林 于 2023-3-8 09:57 编辑

您好,您的配置中还未添加您的网站根目录,所以会报404错误,找不到对应的资源的,您参考下面的配置来配试试
  1.   listen 8082;
  2.    server_name www.a.com a.com;
  3.     index index.php;
  4.     root 你的根目录;
复制代码
使用道具 举报 回复 支持 反对
发表于 2023-3-8 10:14:56 | 显示全部楼层
堡塔运维小林 发表于 2023-3-8 09:55
您好,您的配置中还未添加您的网站根目录,所以会报404错误,找不到对应的资源的,您参考下面的配置来配试 ...

server {
  listen 8082;
   server_name www.a.com a.com;
           index index.php;
   location /api {
   root /www/wwwroot/a.com;
   }
           #PHP-INFO-START  PHP引用配置,可以注释或修改
    include enable-php-73.conf;
    #PHP-INFO-END

    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
    include /www/server/panel/vhost/rewrite/www.a.com.conf;
    #REWRITE-END
}

改成这样后,a.com:8082/api/可以访问,a.com:8082/api/v2/这样的又提示404了
使用道具 举报 回复 支持 反对
发表于 2023-3-8 10:21:40 | 显示全部楼层
ddthepzc 发表于 2023-3-8 10:14
server {
  listen 8082;
   server_name www.a.com a.com;

您好,您的root的位置写错了,root的位置是在index下面,您之前的内容不用动
  1.   listen 8082;
  2.    server_name www.a.com a.com;
  3.     index index.php;
  4.     root 你的根目录;
  5. location /api {
  6.    alias /www/wwwroot/a.com;
  7.    }
复制代码
使用道具 举报 回复 支持 反对
发表于 2023-3-8 10:28:12 | 显示全部楼层
本帖最后由 ddthepzc 于 2023-3-8 10:52 编辑
堡塔运维小林 发表于 2023-3-8 10:21
您好,您的root的位置写错了,root的位置是在index下面,您之前的内容不用动
...

server {
  listen 8082;
   server_name www.a.com a.com;
           index index.php;
           root /www/wwwroot/a.com;
   location /api/ {
   alias /www/wwwroot/a.com;
   }
           #PHP-INFO-START  PHP引用配置,可以注释或修改
    include enable-php-73.conf;
    #PHP-INFO-END
   
    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
    include /www/server/panel/vhost/rewrite/www.a.com.conf;
    #REWRITE-END
}

这样8082下所有的页面都可以访问了,能不能8082单独给/api/开放呢
使用道具 举报 回复 支持 反对
发表于 2023-3-8 14:48:56 | 显示全部楼层
ddthepzc 发表于 2023-3-8 10:28
server {
  listen 8082;
   server_name www.a.com a.com;

您好,alias  /www/wwwroot/a.com;改为alias api/;
然后重新访问看下是否正常呢
使用道具 举报 回复 支持 反对
发表于 2023-3-8 14:53:29 | 显示全部楼层
谢花郎 发表于 2023-3-8 14:48
您好,alias  /www/wwwroot/a.com;改为alias api/;
然后重新访问看下是否正常呢

不能访问哦
使用道具 举报 回复 支持 反对
发表于 2023-3-8 14:54:53 | 显示全部楼层
http://www.a.com:8082/api/1.html可以访问;http://www.a.com:8802/xxx/1.html不可以访问,因为/xxx/目录没有开放8082端口
使用道具 举报 回复 支持 反对
发表于 2023-3-8 16:04:03 | 显示全部楼层

具体参考下第三方的一些设置文档,帖子内我们提供的一些参数也是针对这类的一个设置。
如实现不了的话,还是参考下其他文档所提供的一个方式试试
https://blog.csdn.net/MZS2254399401/article/details/129217794
使用道具 举报 回复 支持 反对
发表于 2023-3-8 16:33:15 | 显示全部楼层
ddthepzc 发表于 2023-3-8 10:28
server {
  listen 8082;
   server_name www.a.com a.com;

您好,您想单独给/www/wwwroot/a.com/api/开放就设置成
  1. listen 8082;
  2.    server_name <a  target="_blank">www.a.com</a> a.com;
  3.            index index.php;
  4.            root /www/wwwroot/a.com;
  5.    location /api/ {
  6.    alias /www/wwwroot/a.com/api;
  7.    }
复制代码

使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

企业版年付运维跟进群

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急问题处理

论坛响应时间:10分钟

问题处理方式:1对1处理(优先)

工作时间:白班:9:00 - 18:00

工作时间:晚班:18:00 - 24:00

立即付费处理

工作时间:09:00至24:00

快速回复 返回顶部 返回列表