2014-02-22 73 views
4

我的服務器設置很好,允許我通過WordPress提供的漂亮按鈕更新插件,主題和核心。但是,升級到3.8後,我還沒有能夠升級任何東西。不過,我也在同一時間向服務器添加了iptables,但我不認爲這是問題 - 我關閉了iptables並嘗試了但沒有取得任何成功。WordPress 3.8:無法找到wordpress內容目錄(wp-content)

當我嘗試通過WordPress的FTP上傳插件/更新時,它無法通過本地主機連接。很長一段很長的時間之後,127.0.0.1和公共IP都會返回「無法找到wordpress內容目錄(wp-content)」,提示超時或多次超時。

環境:

  • WP 3.8(多點,子目錄)
  • 的Ubuntu 12.04服務器
  • vsftpd的(這樣我就可以FTP我的用戶)
  • 遙想當年(當我不知道我在做什麼)我將整個/ var/www /目錄權限改爲gabe:gabe。自那以後,我嘗試將wp-content目錄更改爲gabe:www-data和www-data:www-data沒有成功。我也曾嘗試在wp-content上使用chmod 777,但沒有成功。

我已經Google和絕大多數的修復歸結爲權限。不過,正如我上面所述,我已經嘗試將所有者和權限更改爲目錄的777。所以,我認爲權限是死路一條。

我原本以爲iptables是以某種方式阻礙。但是我已經關閉了/沒有成功衝過桌子。所以我不認爲iptables是罪魁禍首。

其他Google搜索解決方案等於向wp-config.php文件添加了一些代碼。然而,其中一個完全打破了網站。另一個沒有效果。

Apache和域的日誌沒有任何顯示。他們不是空的,但沒有一個引用wp-content或任何我能想到的相關內容。 ftp日誌顯示通過127.0.0.1成功建立連接。

所以我在這一點上用完了我的一些技巧。

-------------編輯:我對wp-config進行的修改------------- 每http://wordpress.org/support/topic/unable-to-locate-wordpress-content-directory-wp-content我改變了wp-config.php包括:

if(is_admin()) { 
    add_filter('filesystem_method', create_function('$a', 'return "direct";')); 
    define('FS_CHMOD_DIR', 0751); 
} 

這是一個解決方案,在4年前的WordPress 2.8中出現了同樣的問題。添加這些行後,網站將無法加載,並且考慮到我發佈的帖子/解決方案的年齡,並且沒有進一步排查網站無法加載的原因。我認爲它正在調用一些WP中不存在的函數。

我加入到可溼性粉劑的config.php第二件的代碼是:

putenv('TMPDIR='. ABSPATH .'tmp'); 
define('WP_TEMP_DIR', ABSPATH . 'tmp'); 

每​​。這並沒有破壞網站,但沒有解決它,所以我刪除它。

+0

你在WP-配置做出什麼樣的變化?有什麼關於「定義('WP_CONTENT_DIR',....」和/或定義('WP_PLUGIN_DIR',....「) – evanv

+0

@evanv我編輯了我的問題,顯示我添加到wp-配置 –

+0

感謝您的添加,您的WP內容目錄是否在wp-config中定義?WP Plugins目錄怎麼樣? – evanv

回答

0

要點檢查(如果您還沒有): 1.檢查您是否可以使用FTP客戶端登錄。 2。無論是文件夾,更改爲WP文件夾時,FTP用戶登錄

它可以幫助你在交叉檢查您設置的一些要點:

您可能必須創建一個ftp用戶,其主文件夾是你的WP安裝。

當WordPress登錄到FTP時,它應該是WP安裝的主文件夾。

檢查這個URL,這會幫助你。

http://blog.noizeramp.com/2008/09/10/wordpress-unable-to-locate-wordpress-plugin-directory/

如果你不知道如何創建用戶或指派主文件夾,有很多網站,其解釋。

下面就是其中之一:

http://www.cyberciti.biz/faq/howto-change-default-home-directory/

創建用戶後,請在WP-config.php中發生如下變化。

define('FTP_USER', 'username'); 
define('FTP_PASS', 'password'); 
define('FTP_HOST', 'ftp.example.org:21'); 

Goodluck!

3

嘗試加入這一行到wp-config.php文件,它爲我工作

define('FS_METHOD', 'ftpsockets'); 
define('FTP_BASE', 'xxx'); 

與你的FTP主目錄如/選擇/ htdocs中/ WordPress的

+0

但是,感謝您的回覆,網站已經升級並且移動到一個新的服務器,這個問題不再是一個問題了,我也沒有它去測試解決方案了, –

26

加入這行來替換XXX我的wp-config.php工作。

define('FS_METHOD', 'direct'); 

我在Ubuntu服務器上有一個本地開發環境。

+0

感謝,請參閱@marklaiky線程的評論 –

+0

在我的情況下,爲了添加這個lin e並刪除文件[define('FS_METHOD','ftpext');]中的原始文件,之後我必須使用「chmod -R 777 wp-content /」更改WP-Content文件夾的權限 – NicolasZ

0

試試這個:)

//* FTP Settings **/ 
/** wp-content path */ 
define('FS_METHOD', 'ftpext'); 
define('FTP_BASE', '/'); 
define('FTP_CONTENT_DIR', '/wp-content/'); 
define('FTP_PLUGIN_DIR', '/wp-content/plugins/'); 
define('FTP_USER', 'testdomain4.com'); 
define('FTP_PASS', 'XXXXXXXXXXXX'); 
define('FTP_HOST', 'ftp.enterpriseit.us'); 
define('FTP_SSL', false); 

看到http://codex.wordpress.org/Editing_wp-config.php