2010-02-26 20 views
6

Tôi nên xử lý tải lên hình ảnh bằng cách sử dụng PHP như thế nào?Chmod, php và imageupload

Tôi nên xử lý cài đặt chmod như thế nào?

Ví dụ;

Tôi có một thư mục có tên/hình ảnh/nơi tôi muốn tải lên tất cả hình ảnh của mình.

Tôi có nên đặt thư mục này thành chmod 777 và để nó như thế không? Hoặc tôi nên thay đổi chmod trên thư mục đó thông qua PHP mỗi khi tôi cần phải tải lên một hình ảnh. Điều này có đúng không, hoặc tôi có nên làm gì khác không?

Trả lời

4

Khi nhà phát triểnphim đề cập, hãy đặt chmod một lần là đủ. Tất cả các lần ghi tiếp theo vào thư mục đó sẽ không thay đổi quyền truy cập thư mục trừ khi bạn chmod nó một cách rõ ràng đến các quyền khác ở một nơi khác.

Quyền được đề xuất cho các thư mục trên máy chủ * nix là 755. Không được phép đặt quyền cho 777. Như đã đề cập bởi wic, nó cho phép đầy đủ cho tất cả mọi người có quyền truy cập vào máy chủ của bạn. Mà làm cho nó dễ bị tổn thương nếu bạn đang trên chia sẻ lưu trữ hoặc chia sẻ máy chủ với người dùng khác.

Cũng cần lưu ý là cách PHP được chạy trên máy chủ của bạn. Trong thực tế, nếu bạn đang chạy PHP như cgi, ví dụ suphp, quyền của 777 cho các thư mục không được phép. Có 777 quyền đối với các thư mục mà các tập lệnh của bạn cư trú sẽ không chạy và thay vào đó sẽ gây ra "500 lỗi máy chủ nội bộ" khi cố thực thi chúng.

1

Chỉ người dùng chạy máy chủ web mới cần quyền truy cập vào thư mục để ghi. Và bạn chắc chắn không muốn thực thi quyền trên thư mục người dùng đang tải lên.

+0

Tôi cho rằng bạn đang sử dụng php cho một trang web nếu kịch bản của nó trả tiền mà không cần lưu ý. – rerun

1

Thông thường, cài đặt thư mục được đặt một lần và đúng vậy. Bạn có thể thiết lập quyền truy cập thư mục thành 777 thông qua PHP, khi bạn đã đặt nó thành 777.

+0

vì vậy không có hại trong việc đặt chmod thành 777 cho một thư mục? (Điều này đi cho tất cả các câu trả lời dưới đây) – jamietelin

+0

Tôi cũng tải lên hình ảnh thông qua ftp đôi khi, sẽ không phải là "chủ sở hữu" là khác nhau hơn khi tôi tải lên thông qua php? – jamietelin

+0

Chủ sở hữu sẽ là người đăng nhập vào phiên FTP. – rerun

1

Không, bạn không phải thay đổi quyền trên thư mục mỗi lần. Sau khi thiết lập, họ được thiết lập để nói chuyện.

Sử dụng 777 là quá mức cần thiết vì nó cung cấp quyền đầy đủ cho mọi người. Hủy bỏ 'x' bit và để cho apache (hoặc bất cứ ai) sở hữu thư mục. Điều này làm cho nó không thể liệt kê các tập tin.

2

Tôi khuyên bạn nên mã hóa thành 755

Các vấn đề liên quan