2012-09-16 27 views
9

Tôi đã tạo một ứng dụng, sử dụng phương thức extractTo() trong lớp ZipArchive (chuẩn trong php) và tôi đã thử nghiệm nó trên máy chủ apache localhost trên Windows 7 mà không gặp bất kỳ vấn đề gì. Nhưng sau khi tôi đã thử nó trên một số máy chủ sản xuất unix, nó chỉ némPHP Warning ZipArchive :: extractTo(): Cho phép từ chối

Warning: ZipArchive::extractTo(): Permission denied in /path/to/file.php on line 27 

Tôi thậm chí đặt chmod trên 0777 cho mỗi thư mục được sử dụng bởi ứng dụng, nhưng nó không giúp đỡ.

Bạn có biết có gì sai không?

+1

Tập lệnh cần có thể truy cập từng thư mục mẹ một cách đệ quy, điều đó không có nghĩa là 777, nhiều hơn 644. –

Trả lời

5

Kiểm tra xem người dùng đang chạy Apache (đôi khi người dùng "www-data") có quyền truy cập vào tệp zip được đề cập hay không.

Đồng thời thử thay đổi chủ sở hữu tệp cho người dùng đang chạy Apache (kiểm tra top cho người dùng).

9

Đối với Linux user/macosx, thay đổi

 $zip->extractTo('/Directory/'); 

Để

 $zip->extractTo('Directory/'); 

có thể giúp quá.

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