Apache là phần mềm máy chủ web phổ biến nhất thế giới (chiếm ~67%), mã nguồn mở, miễn phí, nhanh, an toàn và tin cậy. Tuy nhiên, nhiều người dùng gặp lỗi Forbidden – You Don't Have Permission To Access / on this Server khi cấu hình Apache cho tên miền.
Nguyên nhân gây lỗi
- Cài đặt thư mục toàn cục (Global Directory) không đúng: Cấu hình chưa cho phép chỉ thị (directive) đúng cho trang web.
- Quyền truy cập không đúng: Apache cần quyền đến thư mục gốc mới hoạt động.
- Thiếu tên người dùng trong httpd.conf: Cần nhập tên người dùng thực tế thay vì "User" hoặc "Group".
Giải pháp 1: Sửa cài đặt thư mục toàn cục
Chỉnh sửa httpd.conf hoặc httpd-vhosts.conf:
- Tìm đoạn cấu hình
<Directory />(gần như sau):
<Directory /> Options FollowSymLinks AllowOverride All Order deny,allow Allow from all </Directory>
Lưu ý: Nếu thấyDeny from allhãy đổi thànhAllow from allhoặcRequire all granted. - Thêm dòng
Options Indexes FollowSymLinks Includes ExecCGIđể cấu hình thành:
<Directory /> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Order deny,allow Allow from all </Directory>
- Kiểm tra lỗi. Nếu vẫn lỗi, thay
Allow from allbằngRequire all granted.
Giải pháp 2: Sửa quyền truy cập
Cách cấp quyền đúng:
- Sai:
chgrp -R www-data /username/home/Dropbox/myamazingsite/vàchmod -R 2750 ... - Đúng:
chgrp -R www-data /usernamevàchmod -R 2750 /username - Đảm bảo dùng
chmod 755để cấp quyền đọc.
Giải pháp 3: Thêm tên người dùng vào httpd.conf
Trong httpd.conf, thay User và Group bằng tên người dùng thực tế của bạn. Điều này khắc phục lỗi ở một số trường hợp.