it-swarm-vi.com

Tất cả các thư mục được liệt kê là không thể chấp nhận

Tiêu đề trước: Không thể cài đặt tiện ích mở rộng: Lỗi: Lưu trữ không tồn tại

Tôi đã gỡ bỏ và cài đặt lại Joomla 3.3.6 trên máy chủ CentOS 6.5 của mình. Muốn cài đặt một số tiện ích sao lưu và CCK. Tuy nhiên, tôi đang bị kẹt khi cố gắng cài đặt các tiện ích mở rộng bị lỗi như:

Error
Archive does not exist

Warning
JFolder: :files: Path is not a folder. Path: /var/www/html/jrt/install_54b9d8947a105
JFolder: :folder: Path is not a folder. Path: /var/www/html/jrt/install_54b9d8947a105
JFolder: :files: Path is not a folder. Path: /var/www/html/jrt/install_54b9d8947a105
JInstaller: :Install: Cannot find Joomla XML setup file

Điều này hét lỗi quyền nhưng đây là quyền trên thư mục jrt (tmp)

drwxr-xr-x.  2 root root  4096 Jan 16 22:32 jrt

Hầu hết các đề xuất cho việc này là đặt nó thành 777 nhưng tôi nên nghĩ rằng đó là một thực tiễn tồi và dù sao nó cũng không hoạt động. Tôi đã quen với quyền NTFS và tôi nghĩ rằng tôi cần đặt quyền cho con của thư mục này nhưng nội dung của nó trống để không có gì để thay đổi?

Tôi đã thấy câu chuyện buồn này một vài lần trên web và đường dẫn hoặc quyền liên quan của nó. Tôi biết đường dẫn tồn tại như thể tôi xóa thư mục tôi cũng gặp lỗi

JFolder: :folder: Path is not a folder. Path: /var/www/html/jrt

Tôi không biết có nhiều hơn để kiểm tra điều này không nhưng PHP Handler cũng đã đưa ra nghiên cứu và vì tôi đã cập nhật PHP để tôi có thể chạy nó phiên bản của Joomla có lẽ nó cũng là một thủ phạm. Để kiểm tra tôi đã tạo một tệp php nhỏ

<?php
   print "hello world";
?>

Để xem nếu nó sẽ hiển thị "xin chào thế giới" mà thực sự nó đã làm.

PHP ini

Một câu trả lời yêu cầu tôi thay đổi cài đặt PHP.ini. Đây là những gì tôi đã thay đổi từ mặc định. Thực hiện các thay đổi ở đây không khắc phục các lỗi.

upload_max_filesize = 10M
post_max_size = 11M
max_input_time = 300
max_execution_time = 120
default_socket_timeout = 120

Quyền

Sau khi kiểm tra phần chính xác của bảng điều khiển quản trị Hệ thống> Thông tin hệ thống> Quyền thư mục, không một mục nào ở đây được liệt kê là có thể ghi. Tôi có cần chỉnh sửa từng cây thư mục không? Một lần nữa tôi không nghĩ rằng cài đặt 777 trên các thư mục này là một ý tưởng hay (hoặc công việc). Ví dụ, nó liệt kê thư mục tạm thời của tôi là không thể chấp nhận được nhưng có vẻ như các quyền chính xác ở trên.

Tôi cũng đã cố gắng thay đổi chủ sở hữu nhóm trên thư mục gốc html để bây giờ tất cả các thư mục và tệp có Apache là một nhóm. Không có thay đổi cho đến nay.

Lỗi Apache

Đây là những gì tôi nhận được khi cố gắng cài đặt tiện ích mở rộng

[Sat Jan 17 19:24:02 2015] [error] [client 123.123.123.123] PHP Warning:  file_put_contents(/var/www/html/jrt/plg_webinstaller_3.2v1.0.5.Zip): failed to open stream: Permission denied in /var/www/html/libraries/joomla/filesystem/file.php on line 431, referer: http://mywebsite.ca/administrator/index.php?option=com_installer
[Sat Jan 17 19:24:02 2015] [error] [client 123.123.123.123] PHP Warning:  array_merge(): Argument #1 is not an array in /var/www/html/libraries/cms/installer/helper.php on line 154, referer: http://mywebsite.ca/administrator/index.php?option=com_installer
[Sat Jan 17 19:24:02 2015] [error] [client 123.123.123.123] PHP Warning:  Invalid argument supplied for foreach() in /var/www/html/libraries/cms/installer/helper.php on line 207, referer: http://mywebsite.ca/administrator/index.php?option=com_installer
[Sat Jan 17 20:39:06 2015] [error] [client 123.123.123.123] PHP Warning:  file_put_contents(/var/www/html/jrt/plg_webinstaller_3.2v1.0.5.Zip): failed to open stream: Permission denied in /var/www/html/libraries/joomla/filesystem/file.php on line 431, referer: http://mywebsite.ca/administrator/index.php?option=com_installer
[Sat Jan 17 20:39:06 2015] [error] [client 123.123.123.123] PHP Warning:  array_merge(): Argument #1 is not an array in /var/www/html/libraries/cms/installer/helper.php on line 154, referer: http://mywebsite.ca/administrator/index.php?option=com_installer
[Sat Jan 17 20:39:06 2015] [error] [client 123.123.123.123] PHP Warning:  Invalid argument supplied for foreach() in /var/www/html/libraries/cms/installer/helper.php on line 207, referer: http://mywebsite.ca/administrator/index.php?option=com_installer
4
Matt

Hét to với @VilleNiemi vì đã khắc phục sự cố cho tôi trên đường dẫn write . (Có, tôi đã sử dụng viết thay vì đúng như một cách chơi chữ.) Quyền thư mục của tôi dường như là nguồn gốc của vấn đề của tôi.

Unwritable

Giải pháp nếu Host bị trừ

Tôi nghĩ rằng việc thay đổi nhóm thay đổi từ root thành Apache sẽ khắc phục vấn đề nhưng không có gì thay đổi. Sau khi đọc một bài đăng khác trên Diễn đàn Joomla Tôi thấy ai đó thay đổi chủ sở hữu của các thư mục và tệp. Vì vậy, sau khi tôi chạy như sau

Sudo chown -R Apache:apache /var/www/html/

Sau đó, sau khi làm mới màn hình của mình, tôi lại thấy màu xanh lục.

Green is good

Vì vậy, các tệp trong thư mục gốc của thư mục web của tôi được đặt cho quyền với 744. Các thư mục có 755 và các tệp trong các thư mục đã nói là 644. Hãy nghĩ rằng tôi đã thiết lập xong.

Cài đặt thành công plugin đầu tiên trên trang web của tôi. Tắt với các cuộc đua với tôi!

Giải pháp nếu chia sẻ Host.

Sẽ đăng một cái gì đó dài dòng hơn sau khi hoàn thành nhưng một bài đọc tốt đến từ Dionysopoulos được liên kết trong câu trả lời này 4 . Nó nói về những cạm bẫy cấp phép và tại sao nói chung giải pháp Host chuyên dụng của tôi lại tệ và đặc biệt tệ đối với các nhà cung cấp Host được chia sẻ.

4
Matt

Loại "kho lưu trữ không tồn tại" gợi ý rằng Joomla! không thể tải lên kho lưu trữ. Điều này dẫn đến việc lưu trữ không giải nén được và nội dung không được chuyển đến thư mục dự kiến. Có nghĩa là thư mục dự kiến ​​sẽ không tồn tại.

PHP của bạn có giới hạn tải lên quá thấp so với các tệp được đề cập hoặc đường dẫn tmp của bạn không chính xác. Nếu bạn đã cài đặt PHP, các cài đặt có liên quan có lẽ vẫn ở mức mặc định là 2MB và quá nhỏ. Trong php.ini, đặt upload_max_filesize và post_max_size lên một số giá trị cao hơn.

Mặc dù bạn đang ở đó cũng tăng max_execut_time vì nó gây ra các vấn đề rất khó chịu nếu hết thời gian cài đặt hoặc cập nhật.

2
Ville Niemi