溫馨提示×

laravel在centos上如何實現跨域訪問

小樊
46
2025-08-22 16:43:43
欄目: 智能運維

在 Laravel 中,實現跨域訪問通常是通過設置 CORS(跨來源資源共享)策略來完成的。在 CentOS 系統上,你可以使用以下方法之一來實現跨域訪問:

方法一:使用 Laravel 內置的中間件

  1. 創建一個新的中間件:
php artisan make:middleware CorsMiddleware
  1. 打開新創建的中間件文件,位于 app/Http/Middleware/CorsMiddleware.php,然后修改 handle 方法:
public function handle($request, Closure $next)
{
    $response = $next($request);

    $response->headers->set('Access-Control-Allow-Origin', '*');
    $response->headers->set('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS');
    $response->headers->set('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type, Accept, Origin, Authorization');

    return $response;
}

這里我們設置了允許所有來源的訪問,你可以根據需要修改 Access-Control-Allow-Origin 的值。

  1. 將新創建的中間件添加到 app/Http/Kernel.php 文件的 $middleware 數組中:
protected $middleware = [
    // ...
    \App\Http\Middleware\CorsMiddleware::class,
];

現在,你的 Laravel 應用應該已經允許跨域訪問了。

方法二:使用 Nginx 配置

如果你使用 Nginx 作為 Web 服務器,你可以在 Nginx 配置文件中添加以下內容來實現跨域訪問:

location / {
    add_header 'Access-Control-Allow-Origin' '*' always;
    add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, OPTIONS' always;
    add_header 'Access-Control-Allow-Headers' 'X-Requested-With, Content-Type, Accept, Origin, Authorization' always;

    # 其他配置...
}

這里我們同樣設置了允許所有來源的訪問,你可以根據需要修改 Access-Control-Allow-Origin 的值。

修改完成后,重啟 Nginx 服務以使更改生效:

sudo systemctl restart nginx

現在,你的 Laravel 應用應該已經允許跨域訪問了。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女