Tôi có một trang web nơi người dùng có thể đăng nhập và nghe một bài hát (một mp3 tự tạo). Tôi muốn làm cho nó để người dùng đăng nhập có thể nghe/tải xuống/bất cứ điều gì và tệp phải nằm trên máy chủ (không được lưu trữ trong cơ sở dữ liệu MySQL), nhưng không thể truy cập được bởi người dùng không có đường dẫn vào URL.PHP: Làm cách nào để chặn truy cập URL trực tiếp vào một tệp nhưng vẫn cho phép tệp tải xuống bằng cách đăng nhập người dùng?
Ví dụ: nói mp3 của tôi nằm ở mysite.com/members/song.mp3 Nếu bạn đã đăng nhập, bạn sẽ có thể xem trang mysite.com/members/index.php, trang này sẽ cho phép truy cập vào tệp song.mp3. Nếu bạn chưa đăng nhập, trang mysite.com/members/index.php sẽ không hiển thị cho bạn tệp song.mp3 và liên kết trực tiếp với nó sẽ không cấp quyền truy cập.
Tôi khá chắc chắn điều này được thực hiện qua htaccess và tôi đã thực hiện rất nhiều Googling rồi và đã tìm kiếm tại đây. Hai câu trả lời gần nhất tôi tìm thấy là hướng dẫn htaccess http://perishablepress.com/press/2006/01/10/stupid-htaccess-tricks/ và câu hỏi StackOverflow này Block direct access to a file over http but allow php script access nhưng không trả lời tất cả các câu hỏi của tôi để đáp ứng các tiêu chí của tôi. Tôi đang thiếu gì?
Điều này có hiệu quả, cảm ơn bạn rất nhiều! – Bing
Thay vì từ chối truy cập trực tiếp, bạn có thể lưu trữ tệp bên ngoài wwwroot. –
Điều này làm việc cho tôi để :) cảm ơn ... –