You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

部署在Hostinger共享服务器的Laravel API路由如何防护?

解决Laravel API在共享服务器上的路由暴露问题

核心说明

浏览器能看到API路由是前端HTTP请求的固有特性——哪怕用AWS/Azure的私有网络,前端最终也要通过公网发起请求,所以核心不是“隐藏路由”,而是验证请求合法性和限制访问权限。


具体实现方案

1. 启用CSRF保护(同域场景)

如果前端和API在同域名下,必须开启CSRF验证防止跨站伪造:

  • 前端请求自动携带CSRF令牌:
    const csrfToken = document.querySelector('meta[name="csrf-token"]').content;
    fetch('/api/your-endpoint', {
      method: 'POST',
      headers: {
        'X-CSRF-TOKEN': csrfToken,
        'Content-Type': 'application/json'
      },
      body: JSON.stringify(data)
    });
    
  • 确保Laravel的web中间件组包含VerifyCsrfToken,若API路由用api组,可手动给敏感路由添加CSRF中间件。

2. API身份认证(无状态/跨域场景)

用Laravel Sanctum/Passport实现令牌认证,确保只有合法用户能访问:

  • 给用户模型启用Sanctum:
    use Laravel\Sanctum\HasApiTokens;
    
    class User extends Authenticatable
    {
        use HasApiTokens, HasFactory, Notifiable;
    }
    
  • 前端请求携带令牌:
    fetch('/api/your-endpoint', {
      method: 'GET',
      headers: {
        'Authorization': 'Bearer ' + userToken,
        'Content-Type': 'application/json'
      }
    });
    
  • 路由添加认证中间件:
    Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
        return $request->user();
    });
    

3. 配置CORS限制请求来源

只允许你的前端域名访问API,修改config/cors.php:

return [
    'paths' => ['api/*'],
    'allowed_methods' => ['*'],
    'allowed_origins' => ['https://your-frontend-domain.com'], // 指定前端域名
    'allowed_headers' => ['*'],
    'supports_credentials' => false,
];

4. 共享服务器额外防护

利用Hostinger自带功能增强安全:

  • 启用IP访问限制:在主机面板设置仅允许前端服务器IP或指定地区IP访问API目录;
  • 用.htaccess限制API目录:
    # 仅允许指定请求方法
    <LimitExcept GET POST PUT DELETE>
        deny from all
    </LimitExcept>
    # 禁止直接列出目录文件
    Options -Indexes
    
  • 开启Hostinger的Web应用防火墙(WAF),拦截SQL注入、XSS等恶意请求。

5. 优化路由命名(可选)

避免在路由中暴露敏感信息:

  • 不用/api/user/delete/123这类直白路由,改用/api/action/abc123,后端内部映射到对应逻辑;
  • 不在路由参数中暴露用户ID、业务关键词等敏感内容。

关键提示

路由URL暴露是正常现象,真正的安全核心是:

  • 只有认证用户能访问API;
  • 后端对每个请求做权限校验(比如用户只能操作自己的数据);
  • 请求参数严格验证过滤。

内容的提问来源于stack exchange,提问作者JBA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 12:57:10