Permissions
啟用 wordpress 通過 vsftpd 安裝內容
我在 Amazon EC2 實例上安裝了 Wordpress,但無法讓 WP 安裝主題、外掛等。例如,主題安裝失敗:
Installation failed: Could not copy file. harmonic/404.php
我使用
vsftpd
並創建了一個名為wordpress
.這看起來像是文件權限問題,但我根據一些線上說明設置了權限,無法發現問題:
[ec2-user@ec2 wordpress]$ ls -lah total 196K drwxr-sr-x 5 wordpress www 4.0K Aug 29 14:29 . drwxrwsr-x 3 root www 4.0K Aug 29 14:45 .. -rw-r--r-- 1 wordpress www 418 Sep 25 2013 index.php -rw-r--r-- 1 wordpress www 20K Mar 5 20:14 license.txt -rw-r--r-- 1 wordpress www 7.2K Jul 19 17:34 readme.html -rw-r--r-- 1 wordpress www 5.4K May 24 21:02 wp-activate.php drwxr-sr-x 9 wordpress www 4.0K Aug 16 18:23 wp-admin -rw-r--r-- 1 wordpress www 364 Dec 19 2015 wp-blog-header.php -rw-r--r-- 1 wordpress www 1.5K May 23 16:44 wp-comments-post.php -rw-r--r-- 1 wordpress www 3.0K Aug 29 09:42 wp-config.php -rw-r--r-- 1 wordpress www 2.8K Dec 16 2015 wp-config-sample.php drwxr-sr-x 5 wordpress www 4.0K Aug 29 14:29 wp-content -rw-r--r-- 1 wordpress www 3.3K May 24 2015 wp-cron.php drwxr-sr-x 17 wordpress www 12K Aug 16 18:23 wp-includes -rw-r--r-- 1 wordpress www 2.4K May 23 16:44 wp-links-opml.php -rw-r--r-- 1 wordpress www 3.3K Apr 14 17:53 wp-load.php -rw-r--r-- 1 wordpress www 34K Jun 14 21:51 wp-login.php -rw-r--r-- 1 wordpress www 7.7K Jul 13 12:37 wp-mail.php -rw-r--r-- 1 wordpress www 14K Aug 13 16:02 wp-settings.php -rw-r--r-- 1 wordpress www 30K May 24 20:44 wp-signup.php -rw-r--r-- 1 wordpress www 4.0K Nov 30 2014 wp-trackback.php -rw-r--r-- 1 wordpress www 3.0K Jul 6 12:40 xmlrpc.php [ec2-user@ip-172-31-27-36 wp-content]$ ls -lah total 24K drwxrwsr-x 5 wordpress www 4.0K Aug 29 14:29 . drwxr-sr-x 5 wordpress www 4.0K Aug 29 14:29 .. -rw-rw-r-- 1 wordpress www 28 Jan 8 2012 index.php drwxrwsr-x 5 wordpress www 4.0K Aug 29 14:45 plugins drwxrwsr-x 5 wordpress www 4.0K Aug 29 14:29 themes drwxrwxr-x 17 wordpress www 4.0K Aug 29 15:04 upgrade
我將目錄
/var/www/html/wordpress
分配給使用者wordpress
- 這是正確的嗎?為什麼 vsftpd 日誌不包含有關失敗操作的任何內容?
- Vsftpd 不關心 WordPress 無法複製文件,這不是錯誤。只有在文件傳輸或通過 SFTP 訪問文件期間出現問題時才會出現錯誤,但這不是這裡發生的情況。問題是在安裝過程中,文件已經在伺服器上。
- 您的兩個命令都沒有顯示有問題的實際目錄
harmonic
,這很可能在您的themes
目錄中。這就是問題發生的地方,因此我們需要查看該目錄的權限。- 正如 Christian 提到的,您應該使用 WP_DEBUG 來獲取真正的錯誤,但您無需費心記錄它,只需使用以下命令:
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_DISPLAY', true );
它應該設置為預設顯示,並且這些錯誤應該顯示在您嘗試安裝主題的頁面上,所以請看那裡。 4. 這些文件和目錄應該歸 Apache 使用者所有,而不是你的 vsftpd 使用者。如果 Apache 正在使用,
www
那麼它應該更改為那個。最常見的是使用www-data
,所以我會通過查看正在執行的程序來檢查:ps aux | egrep '(apache|httpd)'
或者在 Apache 配置文件中,
/etc/apache2/httpd.conf
如果您正在執行 Ubuntu/Debian,或者/etc/httpd/conf/httpd.conf
如果您正在執行 CentOS/RHEL。User
您可以找到它作為指令列出。