Video: Quản lý file từ xa qua FTP/FTPS | Hosting Cloud | HostingNhanh Media 2025
Rất phổ biến đối với các ứng dụng web cho phép người dùng tải tệp lên vì lý do này hoặc lý do khác. Bạn cần đảm bảo rằng những video tải lên này an toàn. Ví dụ: một số bảng tin cho phép người dùng tải lên hình ảnh nhỏ hoặc hình đại diện được hiển thị bên cạnh mỗi bài đăng của người dùng đó. Các ứng dụng khác cho phép bạn tải lên tệp dữ liệu để phân tích.
Bạn có thể sử dụng chức năng fopen () tích hợp sẵn của PHP, nó sẽ tự động mở một luồng đến một tệp hoặc URL cho phép người dùng tải tệp lên. Thật không may, phương pháp này là chín chắn để khai thác bởi người dùng độc hại có thể sử dụng nó để tải lên các tập tin từ các máy chủ từ xa vào máy chủ web của bạn.
Ngăn chặn kiểu khai thác này đòi hỏi bạn phải vô hiệu hai cài đặt trong php. ini: register_globals và url_fopen. Vô hiệu hoá những cài đặt này ngăn cản người dùng sử dụng tệp tin được tích hợp sẵn của PHP mà không cần bật tính năng này một cách rõ ràng.
Sau khi bạn vô hiệu hóa hai chức năng này trong php. ini, bạn vẫn cần cho phép người dùng tải tệp lên. Sử dụng bộ chức năng FTP của PHP, một phương pháp an toàn hơn fopen (), cho phép người dùng tải tệp lên.
Bạn có thể sử dụng các chức năng FTP khá trực giác. Đầu tiên, bạn thiết lập một kết nối, sau đó bạn tải lên các tập tin bạn cần, và cuối cùng, bạn đóng kết nối. Dưới đây là cách sử dụng các chức năng FTP trong PHP:
Dưới đây là các hàm FTP phổ biến nhất và các tham số của chúng:
-
ftp_connect (string $ host [int $ port [int $ timeout]]) : < Kết nối với máy chủ FTP - trong trường hợp này là máy chủ web của bạn. :
-
Gửi thông tin đăng nhập vào máy chủ FTP. ftp_put (tài nguyên $ ftp_stream, string $ remote_file, string $ local_file, int $ mode [int $ startpos]) :
-
Đặt một tập tin từ máy địa phương vào máy chủ. ftp_get (tài nguyên $ ftp_stream, string $ local_file, string $ remote_file, int $ mode [int $ resumepos]) :
-
Lấy một tập tin từ máy chủ và gửi nó đến một máy địa phương. ftp_close (resource $ ftp_stream) :
-
Đóng kết nối tới máy chủ. Bạn cần phải đóng luồng FTP ngay khi hoàn thành với nó; nếu không, bạn có một kết nối mở dễ bị tấn công.