Ngày đăng: February 26, 2025
Nếu bạn đang gặp lỗi "Blocked by CORS policy", nghĩa là trình duyệt đã chặn yêu cầu từ một domain khác do chưa được cấp quyền truy cập. Điều này có thể gây ảnh hưởng đến việc hiển thị dữ liệu từ API hoặc tài nguyên bên ngoài trên website của bạn. Để khắc phục, bạn cần bật CORS trên hosting cPanel. Hãy cùng tìm hiểu các bước chi tiết qua bài viết dưới đây của CloudFly nhé.

CORS (Cross-Origin Resource Sharing) là một cơ chế bảo mật trên trình duyệt giúp kiểm soát việc chia sẻ tài nguyên giữa các trang web có nguồn gốc khác nhau. Mặc định, trình duyệt chỉ cho phép các yêu cầu từ cùng một nguồn (same-origin policy). Nhưng với CORS, máy chủ có thể thiết lập quyền truy cập cho các nguồn khác (cross-origin) bằng cách gửi các tiêu đề HTTP (headers) phù hợp.
Ví dụ: Nếu trang web A (https://example.com) muốn gửi yêu cầu đến API của trang web B (https://api.example.net). Thì B phải cho phép A truy cập thông qua cấu hình CORS. Nếu không, trình duyệt sẽ chặn yêu cầu do vi phạm chính sách cùng nguồn gốc.
Lỗi “Blocked by CORS” xảy ra khi trình duyệt chặn một yêu cầu truy cập tài nguyên từ một domain khác do vi phạm chính sách CORS. Đây là một cơ chế bảo mật giúp kiểm soát việc chia sẻ tài nguyên giữa các trang web, đảm bảo rằng chỉ các yêu cầu hợp lệ mới được phép truy cập.
Mặc định, nhiều dịch vụ CDN hỗ trợ CORS, nhưng không phải tất cả các hosting đều bật tính năng này. Lý do là nếu hosting cho phép CORS mà không có kiểm soát, các file tĩnh (static files) trên website có thể bị truy xuất tự do. Điều này gây lãng phí băng thông và tăng nguy cơ thất thoát tài nguyên.
Lỗi này thường xuất hiện khi một website sử dụng nhiều domain nhưng chưa cấu hình CORS hợp lệ. Ví dụ: Domain chính (https://example.com) muốn truy cập tài nguyên từ domain phụ (https://api.example.com). Nếu máy chủ của api.example.com không được cấu hình để cho phép example.com truy cập, trình duyệt sẽ chặn yêu cầu và hiển thị lỗi "Blocked by CORS policy".
Trong một số trường hợp, bạn cần bật CORS, chẳng hạn khi một website sử dụng nhiều domain phụ hoặc khi tích hợp API từ bên thứ ba. Tuy nhiên, việc bật CORS cần được kiểm soát cẩn thận để tránh rủi ro bảo mật và lãng phí tài nguyên.
Nếu bạn muốn bật CORS trên hosting cPanel, bạn có thể thực hiện theo một trong hai cách sau:
Đây là cách phổ biến và được khuyến nghị vì có thể áp dụng cho toàn bộ website. Bạn chỉ cần mở file .htaccess trên hosting và thêm đoạn mã sau:
<IfModule mod_headers.c>
Header set Access-Control-Allow-Origin "*"
</IfModule>

Nếu website của bạn chạy trên PHP, bạn có thể bật CORS bằng cách chèn đoạn mã sau vào file PHP cần sử dụng:
<?php
header("Access-Control-Allow-Headers: Authorization, Content-Type");
header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json; charset=utf-8");
?>
Sau đó, bạn có thể kiểm tra trên website đã được bật CORS chưa.

Cả hai cách trên đều giúp bật CORS trên hosting cPanel. Tuy nhiên, việc sử dụng .htaccess thường được ưu tiên hơn vì nó ảnh hưởng đến toàn bộ website mà không cần chỉnh sửa từng file PHP riêng lẻ.
>>> Xem thêm:
Hy vọng bài viết trên trên đã giúp bạn hiểu rõ hơn về hướng dẫn bật CORS trên hosting cPanel. Nếu còn thắc mắc hay muốn đăng ký Cloud Hosting tại CloudFly, hãy liên hệ ngay với chúng tôi qua thông tin bên dưới để được tư vấn và hỗ trợ chi tiết. Đội ngũ kỹ thuật có chuyên môn cao luôn sẵn sàng 24/7 để giải quyết mọi vấn đề của bạn.
THÔNG TIN LIÊN HỆ: