Yanıtlar:
wp-config.php
Dosyanızı düzenlerseniz, bu FTP ayarlarını WordPress tarafından okunan sabitler olarak önceden yükleyebilirsiniz. Paylaşılan bir ana bilgisayarda, olası güvenlik etkilerine dikkat etmeniz gerektiğini unutmayın.
Dahawp-config.php
fazla bilgi için Düzenleme'ye bakın .
Ayarlarınız değişecek, ancak bunlar benim ve barındırma kurulumum için geçerli. Kullanılmayan sabitlerin bir kısmını önceden ekledim:
define('FS_METHOD', 'direct');
define('FTP_BASE', '/usr/home/username/public_html/my-site.example.com/wordpress/');
define('FTP_CONTENT_DIR', '/usr/home/username/public_html/my-site.example.com/wordpress/wp-content/');
define('FTP_PLUGIN_DIR ', '/usr/home/username/public_html/my-site.example.com/wordpress/wp-content/plugins/');
// define('FTP_PUBKEY', '/home/username/.ssh/id_rsa.pub');
// define('FTP_PRIKEY', '/home/username/.ssh/id_rsa');
define('FTP_USER', 'my-ftp-username');
define('FTP_PASS', 'my-ftp-password');
define('FTP_HOST', 'ftp.my-site.example.com');
// define('FTP_SSL', false);
Dosya sahipliğini kontrol et. Apache'nin çalıştığı kullanıcı wordpress dizinlerine yazabiliyorsa, tümleşik yükseltme işlemi sadece ftp olmadan çalışıyor. FTP kimlik bilgileri, web sunucusu dosyalarınız üzerinde doğru yetkilere sahip değilse içindir, daha sonra wordpress sizden FTP ayrıntılarınızı ister ve bunları FTP sunucusuna yazabilmek için aynı sunucuyu kullanmaya çalışır. ihtiyaç duyduğu dosyalar.
Görünen o ki, WordPress sadece dizinlerin yazılabilir olup olmadığını kontrol etmiyor, aynı zamanda Apache kullanıcısının dizinleri OWNS (veya en azından Apache'nin oluşturduğu geçici dosyaya sahip olup olmadığını) kontrol edip etmediğini kontrol ediyor . Bu kod satırlarını /wp-admin/includes/file.php: get_filesystem_method () adresinde inceleyin:
if ( $temp_handle ) {
if ( getmyuid() == @fileowner($temp_file_name) )
$method = 'direct';
@fclose($temp_handle);
@unlink($temp_file_name);
}
Bu nedenle, hızlı bir çözüm bu komutu vermek ve tüm Wordpress kurulumunun Apache'ye sahipliğini vermek olacaktır:
sudo chown -R www-data wordpress/
Www-data Apache kullanıcısı ve tabii ki wordpress ise WordPress kurulum klasörünüzdür.
Çözümümü burada ayrıca belgeledim: https://ardeearam.wordpress.com/2013/02/03/solved-wordpress-asking-for-ftp-credentials-when-upgrading/
Centos 7 PHP 7 sunucusundaki web sitesi yükleme hızını artırmak için Apache 2.4'ten EasyApache4'e ince ayar yaparken, mod_pagespeed'i etkinleştirdim. Etkinleştirildiğinde, mod_ruid2 ve mod_cgi'yi otomatik olarak devre dışı bırakır (ve diğer iki modülü etkinleştirir). Mod_pagespeed'i devre dışı bırakırken, mod_ruid2'yi otomatik olarak yeniden etkinleştirmez - sadece mod_cgi'yi yeniden etkinleştirir. Mod_ruid2 olmadan Wordpress, FTP kimlik bilgilerini ister.
Wp-config.php kodunu veya dosya izinlerini (tehlikeli bir şekilde) 777 olarak ayarlamaya gerek yoktur. Sadece mod_ruid2'yi manuel olarak etkinleştirin, Apache'yi yeniden başlatın ve FTP / dosya izin sorunu çözüldü. Wordpress ve eklentiler artık her zamanki gibi güncellenebilir ve Wordpress galerisine yüklenen ortamlar. Hemen çalışır.
MPM Prefork’tan İşçiye geçerken mod_ruid2’yi devre dışı bırakacağını kontrol ettim. Worker'dan Prefork'a geri dönüldüğünde mod_ruid2'yi etkinleştirmez ve bu yazıda açıklanan soruna neden olur.
Her iki durumda da, anahtar mod_ruid2'yi kontrol etmek ve etkinleştirmek içindir.
Umarım yardım etmişimdir.
1) Çok genel olduğu için yukarıdaki cevaba katılmıyorum
1a) Sadece tüm dosyalarımın mülkiyetini tekrarlı bir şekilde değiştirmek istemiyorum (bir sivrisinek öldürmek için av tüfeği kullanırken). Özellikle de bu daha önce mükemmel çalışıyor.
1b) Birdenbire "sinsi" özelliğine sahip olan WordPress sizden ftp kimlik bilgilerini ister
2) Ardee Aram'ın liderliğini kullanarak daha derine kazmaya başladım. File.php dosyasını kontrol etmeye gittim ve sahipliğini kontrol ettim. File.php, (root olarak ayarlanmış) kendi sahipliğine bağlıdır.
Düzeltme: chown www file.php
NOT: Dağıtıcınız veya ayarlarınız ne olursa olsun, www'yi değiştirin (ps aux | egrep "php | http" kullanabilirsiniz ve sahipliğini ilk sütunda ne olduğunu görebilirsiniz.
Umarım bu, başkalarının bu konuda hüsrana uğramasına yardımcı olur. WordPress'in neden "şikayet etmediğini" bile anlamadım ve FTP alternatifini kullanmayı öneriyorum. Şimdi aniden ortaya çıkan bir "özellik" gibi.