क्या मैं एफ़टीपी एक्सेस प्रदान किए बिना वर्डप्रेस प्लग इन स्थापित / अपडेट कर सकता हूं?


564

मैं अपने लाइव सर्वर पर वर्डप्रेस का उपयोग कर रहा हूं जो केवल एसएसएच कुंजी का उपयोग करके एसएफटीपी का उपयोग करता है ।

मैं प्लगइन्स को इंस्टॉल और अपग्रेड करना चाहता हूं, लेकिन ऐसा लगता है कि आपको प्लगइन्स को इंस्टॉल करने के लिए अपना एफ़टीपी लॉगिन दर्ज करना होगा। क्या वर्डप्रेस को पूरी प्रक्रिया को संभालने के बजाय फ़ाइलों को मैन्युअल रूप से अपलोड करके प्लगइन्स को इंस्टॉल और अपग्रेड करने का एक तरीका है?


3
हाँ तुम कर सकते हो। बस आपके पास cPanel या किसी अन्य फ़ाइल अपलोड टूल का उपयोग करना; ज़िप्ड प्लगइन अपलोड करें और wp-content/plugins/wp डैशबोर्ड से अर्क को प्लग इन टैब पर जाएं और इसे इनेबल करें।
WPDev

यदि उपयोग कर रहे हैं VPS, तो यह प्रयास करना चाहिए: stackoverflow.com/a/44137965/3160597
azerafati

@PDev यदि आपकी टिप्पणी को एक उत्तर के रूप में सूचीबद्ध किया गया था, तो मैं इसे फिर से जारी करूंगा, यह सबसे उपयोगी था।
तेनसिग

जवाबों:


771

यदि आप /wp-contentसीधे नहीं लिख सकते हैं तो प्लगइन्स या वर्डप्रेस अपडेट को स्थापित करने की कोशिश करते समय वर्डप्रेस आपको आपकी एफ़टीपी कनेक्शन जानकारी के लिए संकेत देगा । अन्यथा, यदि आपके वेब सर्वर के पास आवश्यक फाइलों तक पहुंच है, तो यह स्वचालित रूप से अपडेट और इंस्टॉलेशन का ध्यान रखेगा। इस पद्धति के लिए आपको FTP / SFTP या SSH का उपयोग करने की आवश्यकता नहीं है, लेकिन इसके लिए आपके पास अपने वेबसर्वर पर विशिष्ट फ़ाइल अनुमतियाँ होना आवश्यक है।

यह क्रम में विभिन्न तरीकों की कोशिश करेगा, और एफ़टीपी पर वापस गिर जाएगा अगर डायरेक्ट और एसएसएच तरीके अनुपलब्ध हैं।

https://github.com/WordPress/WordPress/blob/4.2.2/wp-admin/includes/file.php#L912

वर्डप्रेस आपकी /wp-contentनिर्देशिका में एक अस्थायी फ़ाइल लिखने की कोशिश करेगा । यदि यह सफल होता है, तो यह फ़ाइल के स्वामित्व की तुलना अपने स्वयं के यूआईडी से करता है, और यदि कोई मैच होता है, तो यह आपको प्लगइन्स, थीम या अपडेट स्थापित करने की 'प्रत्यक्ष' विधि का उपयोग करने की अनुमति देगा।

अब, यदि किसी कारण से आप स्वचालित जांच पर भरोसा नहीं करना चाहते हैं जिसके लिए फाइल सिस्टम पद्धति का उपयोग करना है, तो आप 'FS_METHOD'अपनी wp-config.phpफ़ाइल में एक स्थिरांक को परिभाषित कर सकते हैं , यह या तो 'direct', 'ssh', 'ftpext' or 'ftpsockets'उस पद्धति का उपयोग करेगा। ध्यान रखें कि यदि आप इसे 'प्रत्यक्ष' पर सेट करते हैं, लेकिन आपका वेब उपयोगकर्ता (उपयोगकर्ता नाम जिसके तहत आपका वेब सर्वर चलता है) के पास उचित लेखन अनुमति नहीं है, तो आपको एक त्रुटि मिलेगी।

सारांश में, यदि आप wp-content पर अनुमतियों को बदलना नहीं चाहते (या आप नहीं कर सकते हैं) तो आपके वेब सर्वर के पास अनुमतियाँ हैं, तो इसे अपनी wp-config.php फ़ाइल में जोड़ें:

define('FS_METHOD', 'direct');

अनुमतियाँ यहां बताई गई हैं:


30
मुझे करना था: sudo chown -R www-data wp-content साथ ही साथ
राइटिंग

5
के उपयोग getmyuidलाइन 876 पर यहाँ यकीनन गलत है, के रूप में यह स्क्रिप्ट स्वामी, नहीं स्क्रिप्ट निष्पादक की यूआईडी देता है। मेरा मानना ​​है कि यह होना चाहिए posix_getuid
cmbuckley

7
इस दृष्टिकोण के सुरक्षा निहितार्थ क्या हैं?
जहमीम

1
यदि आप यह देखना चाहते हैं कि कौन सा उपयोगकर्ता php चला रहा है, तो आप इसका उपयोग कर सकते हैं: print_r(posix_getpwuid(posix_geteuid())); आप wp-configफ़ाइल में कोड जोड़ सकते हैं ।
इवान वी।

3
chown -R www-data wordpress/wp-contentमेरे लिए काम नहीं किया, लेकिन chown -R www-data wordpressकिया
मार्टिन 14

251

जैसा कि पहले परमिट परमिट में से कोई भी काम नहीं करता है। आपको तदनुसार परमिट बदलने और अपने में निम्नलिखित डालने की आवश्यकता है wp-config.php:

define('FS_METHOD', 'direct');

11
भले ही मेरे पास सही अनुमति थी जैसे कि वेब सर्वर प्लगइन्स डायरेक्टरी और wp-content डायरेक्टरी को लिख सकता है, इस सेटिंग ने इसे ठीक कर दिया है, इसलिए व्यवस्थापक ने प्लगइन्स को अपडेट करने के लिए FTP / SFTP सेटिंग्स के लिए संकेत नहीं दिया। धन्यवाद। पूरी तरह से काम किया।
सीन मैक्लेरी

7
मुझे स्पष्ट रूप से ऐसा करना था।
julien_c

5
उन्होंने इसकी आवश्यकता कब पूरी की?
danjp

मुझे उबटन 12.04 पर डेबियन पैकेज द्वारा स्थापित WP पर भी इस सेटिंग पर निर्भर रहना पड़ा। अन्यथा, अनुमतियाँ ठीक थीं, wp-content में समूह www-data के लिए rwx अनुमति है ...
alci

2
यह सुनिश्चित करने के लिए देखें कि निम्न wp-config.php फ़ाइल में पहले से ही नहीं है: परिभाषित करें ('FS_METHOD', 'ftpext'); इस स्थिति में, परिभाषित करना ('FS_METHOD', 'प्रत्यक्ष'); फ़ाइल के नीचे काम नहीं करेगा। आपको परिभाषित करना होगा या परिभाषित करना होगा ('FS_METHOD', 'ftpext'); यह विशेष रूप से तब हो सकता है जब आपने एफ़टीपी की आवश्यकता वाले किसी अन्य सर्वर से माइग्रेट किया हो।
डग

104

बस यह जोड़ना चाहता था कि आपको wp-contentकिसी भी फ़ोल्डर की अनुमति या अनुमति निर्धारित करनी चाहिए 777

यह वही है जो मुझे करना था:

1) मैं अपाचे उपयोगकर्ता के लिए वर्डप्रेस फ़ोल्डर (पुनरावर्ती) का स्वामित्व सेट करता हूं, जैसे:

# chown -R apache wordpress/

2) मैंने वर्ड फ़ोल्डर फ़ोल्डर (पुनरावर्ती) के समूह के स्वामित्व को अपाचे समूह में बदल दिया, जैसे:

# chgrp -R apache wordpress/

3) मालिक को निर्देशिका का पूरा विशेषाधिकार देना, जैसे:

# chmod u+wrx wordpress/*

और यही काम किया। मेरे wp-contentफ़ोल्डर में 755अनुमतियां हैं, btw।

TL; DR संस्करण:

# chown -R apache:apache wordpress
# chmod u+wrx wordpress/*

11
अपाचे के स्वामित्व के रूप में अपने वर्डप्रेस को सेट करना 777 की स्थापना के समान ही बुरा है। परिणाम एक ही है: कोई भी php स्क्रिप्ट अब आपकी वर्डप्रेस फ़ाइलों को बदल सकती है। सबसे अच्छा विकल्प अपाचे को चबाना है: अपाचे अस्थायी, अपने अपडेट स्थापित करें और वापस मूल पर जाएं या ssh / ftp ट्रिक का उपयोग करें
woens

11
मैं असहमत हूं। यह 777 की सेटिंग के समान नहीं है। यदि आप 777 के लिए अनुमतियाँ सेट करते हैं, तो मशीन का कोई भी उपयोगकर्ता लिख ​​सकता है। यह अपने आप में एक समस्या है। और जब आप सही होते हैं, तो अपाचे अब php फ़ाइलों को बदल सकता है, जो कि पहले स्थान पर आशय होगा (कुछ भी अद्यतन करने या स्थापित करने के लिए)। अगर कोई सर्वर में दुर्भावनापूर्ण php फ़ाइलों को रखने का प्रबंधन करता है, तो यह एक पूरी नई समस्या है और विभिन्न उपयोगकर्ताओं को धोखा देना मदद करने के लिए बहुत कम है।
सूफीनावाज़

2
धन्यवाद, इसने मेरा दिन भी बचा लिया, क्योंकि मेरे पास एफ़टीपी विशेषाधिकार नहीं हैं, लेकिन केवल रूट एक्सेस है।
shasi kanth

4
यह केवल एक ही है जिसने मेरी मदद की! बहुत बहुत धन्यवाद, Wordpress साइटों को विकसित करने के बाद, यह अभी भी एक क्लासिक समस्या है!
15

1
यदि आप एक असामान्य बिल्ड के तहत वर्डप्रेस चला रहे हैं, तो इसे एक पीएचपी फ़ाइल में यह जांचने के लिए चिपका दें कि अपाचे किसके रूप में चल रहा है (ubuntu, उदाहरण के लिए, www-data है): <? Php इको एक्जीक्यूट ('whoami'); ?>
इंपीरियल

70
  1. में wp-config.phpजोड़नेdefine('FS_METHOD', 'direct');
  2. सर्वर निर्देशिकाओं लिखने योग्य बनाने wp-content/, wp-content/plugins/
  3. प्लगइन स्थापित करें (डायर में प्लगइन की प्रतिलिपि बनाएँ wp-content/plugins)।

संस्करण 3.2.1 पर काम किया


4
संस्करण 4.0 पर भी काम किया।
मीटाई डॉट कॉम

1
आपको इस विकल्प को जोड़ना होगा लेकिन आपको केवल wp-content / plugins के परमिट को बदलने की आवश्यकता है
John Kloian

यह स्पष्ट रूप से कदम है जो आपको एफ़टीपी जानकारी के लिए संकेत दिए बिना एक प्लगइन स्थापित करने के लिए लेना चाहिए। आप अनुमतियों के साथ हार्डन वर्डप्रेस के लिए कदम उठा सकते हैं, और फिर इन 2 परिवर्तनों को कर सकते हैं, और आपको ज्यादातर सुरक्षित रहना चाहिए।
बोजडोज़

50

wp-config.phpफ़ाइल खोलें और निम्न पंक्ति जोड़ें:

define('FS_METHOD', 'direct');

यह मेरे लिए काम कर रहा है ... धन्यवाद


जून 2020 तक संस्करण 5.4 पर भी काम करता है (और आवश्यक लगता है)।
राल्फ हेन

34

बस wp-config.php में एक त्वरित बदलाव

define('FS_METHOD','direct');

यही है, बिना ftp के अपने वर्डप्रेस अपडेट का आनंद लें !

वैकल्पिक विधि:

वहाँ मेजबान हैं जो आपके वर्डप्रेस अपडेट को आसान बनाने के लिए इस पद्धति को काम करने से रोकेंगे। सौभाग्य से, इस कीट को आपके एफ़टीपी उपयोगकर्ता नाम और पासवर्ड के लिए संकेत देने से रोकने का एक और तरीका है।

फिर, आपकी wp-config.php फ़ाइल में MYSQL लॉगिन घोषणाओं के बाद, निम्नलिखित जोड़ें:

define("FTP_HOST", "localhost");
define("FTP_USER", "yourftpusername");
define("FTP_PASS", "yourftppassword");

22

अपने अपडेट और थीम अपलोड के लिए SSH2 के उपयोग को सक्षम करने के लिए, आपको अपनी SSH कुंजियों को उत्पन्न करना होगा और PHP SSH मॉड्यूल को स्थापित करना होगा। तब वर्डप्रेस पता लगाएगा कि आपके पास SSH2 उपलब्ध है और आपको अपलोड / अपग्रेड करते समय एक अलग विकल्प (SSH2) दिखाई देगा।

1.) सुनिश्चित करें कि आप PHP मॉड्यूल डेबियन के लिए स्थापित है:

sudo apt-get install libssh2-php

2.) SSH कुंजियाँ बनाएँ, पासफ़्रेज़ जोड़ना वैकल्पिक है:

ssh-keygen
cd  ~/.ssh
cp id_rsa.pub authorized_keys

3.) अनुमति बदलें ताकि वर्डप्रेस उन कुंजियों तक पहुंच सके:

cd ~
chmod 755 .ssh
chmod 644 .ssh/*

अब आपको अपलोड / अपग्रेड / प्लगइन करते समय SSH2 विकल्प मिलेगा। WP SSH कनेक्शन

4.) अतिरिक्त आसानी के लिए आप अपने में चूक सेट कर सकते हैं wp-config.phpऔर यह वर्डप्रेस अपलोड विंडो में SSH क्रेडेंशियल्स को पूर्व-आबाद करेगा।

define('FTP_PUBKEY','/home/<user>/.ssh/id_rsa.pub');
define('FTP_PRIKEY','/home/<user>/.ssh/id_rsa');
define('FTP_USER','<user>');
define('FTP_PASS','passphrase');
define('FTP_HOST','domain.com');

यदि आप पासफ़्रेज़ की स्थापना नहीं करते हैं, तो 'पासफ़्रेज़' वैकल्पिक है ssh-kengen; फिर इसे अंदर न जोड़ेंwp-config.php

इससे मेरी समस्या हल हो गई। और मुझे ऐसा बिल्कुल नहीं करना था chown। लेकिन मैंने इस विधि को अन्य स्थानों पर संदर्भित देखा है।

संदर्भ:


मैं एक सुरक्षा विशेषज्ञ नहीं हूं, और मुझे एहसास है कि वर्डप्रेस ने इस क्षमता को शामिल किया और सोचा कि यह ठीक था .... लेकिन मुझे इस बारे में अच्छा नहीं लगता है ... 1. कोई पासफ़्रेज़ के साथ एक ssh खाता होना, (कोई भी जो कभी भी हो जाता है) निजी कुंजी तब पासवर्ड के बिना किसी भी समय दूरस्थ रूप से लॉग इन कर सकती है) और 2. पासफ़्रेज़ में रखा हुआ पासफ़्रेज़ (1 देखें)। यह मुझे सिस्टम के नेटवर्क पासवर्ड की सुरक्षा के लिए "इस बात पर निर्भर करता है कि" किसी को भी मेरी स्थानीय फ़ाइलों तक पहुंच नहीं होगी ", यह आपको rsh की याद दिलाता है।
उज्ज्वल

मुझे यकीन है कि आप पासफ़्रेज़ उत्पन्न कर सकते हैं और इसे wp-config.php में शामिल नहीं कर सकते हैं, फिर आपको कनेक्शन सूचना संवाद में आने पर बस इसे टाइप करना होगा।
जैकलीनियो

यह इस तरह एक बिना लाइसेंस वाली निजी कुंजी का उपयोग करने के लिए एक बड़ा सुरक्षा छेद है। लेकिन आप अधिकृत_की में प्रासंगिक पंक्ति में "= जो कुछ भी" का उपयोग करके समस्या को कम कर सकते हैं।
अंकन

यह बहुत अच्छा है, लेकिन लगता है कि php7 के साथ एक अक्षमता है: core.trac.wordpress.org/ticket/35517
Supaiku

21

आमतौर पर आप केवल wp-content\pluginsनिर्देशिका में अपना प्लगइन अपलोड कर सकते हैं । यदि आपके पास एसएफटीपी के माध्यम से इस निर्देशिका तक पहुंच नहीं है, तो मुझे डर है कि आप फंस सकते हैं।


हां, wp-content / plugins में उन्हें ड्रॉप करें।
सिजयोज़

17

आप कमांड प्रोमट पर निम्न कमांड टाइप करके इसे बहुत आसानी से प्राप्त कर सकते हैं

sudo chown -R www-data:www-data your_folder_name

या अपनी wp-config.php फ़ाइल में निम्न कोड को कॉपी और पेस्ट करें।

define('FS_METHOD', 'direct');

जहां "your_folder_name" वह फ़ोल्डर है जहां आपका वर्डप्रेस इस फ़ोल्डर के अंदर स्थापित है।


16

टर्मिनल में निम्न कोड निष्पादित करें

sudo chown -R www-data /var/www

आगे विस्तार के लिए वर्डप्रेस Ubuntu पर एफ़टीपी एक्सेस के बिना प्लगइन्स इंस्टॉल करें


4
यह आपके
वेबनिर्माता

वैरिएंट जो मेरे लिए काम करता है:sudo chown -R www-data /var/www/html
जूल्स कोल

15

निम्नलिखित कोड wp-config में जोड़ें

define('FS_METHOD', 'direct');

FS_METHOD फाइलसिस्टम विधि को बाध्य करता है। यह केवल प्रत्यक्ष, ssh2, ftpext, या ftpsockets होना चाहिए। यदि आप अद्यतन समस्याओं का सामना कर रहे हैं, तो आमतौर पर, आपको इसे बदलना चाहिए। यदि आप इसे बदलते हैं और यह मदद नहीं करता है, तो इसे वापस बदल दें / हटा दें। ज्यादातर परिस्थितियों में, इसे 'फीटपॉकेट्स' में सेट करना अगर स्वचालित रूप से चुनी गई विधि नहीं करता है तो यह काम करेगा।

(प्राथमिक प्राथमिकता) "प्रत्यक्ष" यह PHP के भीतर से डायरेक्ट फ़ाइल I / O अनुरोधों का उपयोग करने के लिए मजबूर करता है, यह खराब कॉन्फ़िगर किए गए मेजबानों पर सुरक्षा मुद्दों को खोलने के साथ भरा हुआ है, यह उपयुक्त होने पर स्वचालित रूप से चुना जाता है।

(द्वितीयक वरीयता) "ssh2" एसएसएच PHP एक्सटेंशन के उपयोग को स्थापित करने के लिए बाध्य करने के लिए है

(3rd प्राथमिकता) "ftpext" एफ़टीपी एक्सेस के लिए एफ़टीपी PHP एक्सटेंशन के उपयोग को मजबूर करने के लिए है, और अंत में

(4th वरीयता) "ftpsockets" एफ़टीपी एक्सेस के लिए PHP सॉकेट्स क्लास का उपयोग करता है

अधिक जानकारी के लिए देखें: http://codex.wordpress.org/Editing_wp-config.php#WordPress_Upgrade_Constants


15

यदि आप उबंटू पर हैं , तो एक त्वरित समाधान जो मेरे लिए काम करता है वह अपाचे उपयोगकर्ता (डिफ़ॉल्ट रूप से www-data) को स्वामित्व दे रहा है:

cd your_wordpress_directory
sudo chown -R www-data wp-content
sudo chmod -R 755 wp-content

2
उन फ़ाइलों को निष्पादित करने की अनुमति न दें जिनकी आवश्यकता नहीं है।
बुरहान अली

13

से बदलें php_modकरने fastcgiके साथ cgiऔर SuEXECसक्षम होना चाहिए। मेरे लिये कार्य करता है।

अगर काम नहीं करते हैं, को बदलने की कोशिश wp-contentकरने के लिए 775रूट के रूप में:

chmod -R 775 ./wp-content

इसमें जोड़ें wp-config.php:

define('FS_METHOD', 'direct');

मैं आशा करता हूँ यह काम करेगा


12

वर्डप्रेस 2.7 आपको सीधे ज़िप फ़ाइल अपलोड करने देता है (प्लगइन्स पेज के नीचे एक लिंक है) - कोई एफ़टीपी एक्सेस की आवश्यकता नहीं है। यह 2.7 में एक नई सुविधा है, और यह केवल प्लगइन्स के लिए काम करता है (अभी तक थीम नहीं)।


BTW, उन्नयन और भी आसान है - आपको एक आइकन दिखाई देगा जो यह संकेत देगा कि एक नया संस्करण उपलब्ध है, और आप "अपग्रेड" पर क्लिक करें और इसे अपनी बात करने दें। बहुत अच्छा। यहां तक ​​कि वर्डप्रेस कोर इस तरह से अपग्रेड किया गया है - मैं 2.7 से 2.7.1 w / o कुछ भी अपलोड करने के लिए चला गया।
डी। लैम्बर्ट

यह केवल तभी सही है जब आपके पास फ़ाइल अनुमतियाँ सेट हों, ताकि वेब सर्वर / PHP उपयोगकर्ता उन्हें लिख सकें। यदि नहीं, तो यह आपको FTP / SFTP क्रेडेंशियल के लिए संकेत देगा। देखें stereointeractive.com का जवाब
डेव फोर्गैक

9

एक पुराने धागे को पुनर्जीवित करना, लेकिन SSH SFTP अपडेटर सपोर्ट नामक एक शानदार नया प्लगइन है जो आपके संपादन को संपादित करने की आवश्यकता के बिना SFTP क्षमताओं में जोड़ता हैwp-config.php फ़ाइल । इसके अलावा, वर्डप्रेस का एसएफटीपी कार्यान्वयन कुछ हद तक अस्पष्ट PHP मॉड्यूल पर निर्भर करता है जो अक्सर सर्वर पर सक्षम नहीं होते हैं; यह प्लगइन एक अलग PHP SFTP प्लग इन करता है ताकि आपको Apache साइड पर कुछ भी कॉन्फ़िगर न करना पड़े।

मैं काम करने के लिए SFTP समर्थन प्राप्त करने की समस्याओं के टन में चला गया था - इस प्लगइन उन सभी को हल किया और सिर्फ शानदार है।


9

इसे इस्तेमाल करे

1) wp-config.phpऐड मेंdefine('FS_METHOD', 'direct');

2) लिखने योग्य के लिए wp-contentनिर्देशिका सेट करें 777

3) अब प्लगइन स्थापित करें।


6
हाय मोहन, FS_METHOD विकल्प के लिए धन्यवाद ढेर। यह वास्तव में मैं क्या देख रहा था। मुझे निम्नलिखित बातें कहने की ज़रूरत नहीं है: कोई भी निर्देशिका हर 777 की ज़रूरत नहीं होनी चाहिए जब तक कि परिस्थितियां असाधारण न हों। यह एक निर्देशिका की दुनिया को पठनीय, लिखने योग्य और निष्पादन योग्य बनाता है। यह बड़े पैमाने पर सुरक्षा जोखिम है। उचित समाधान यह पता लगा रहा है कि आपका एपाचे उपयोगकर्ता कौन है (www-data, _www या समान)। इस उपयोगकर्ता को इस डीआईआर ('sudo chown www-data wp-content') पर wp-content या स्वामित्व की आवश्यकता के लिए पढ़ने और लिखने की आवश्यकता है, कोई निष्पादन अधिकार नहीं। मुझे थोड़ा सा कुंद होने के लिए खेद है, लेकिन 777 वेब सामग्री के लिए खतरनाक है।
रूबेन

8
अपने अपलोड निर्देशिका को 777 न करें, यह असुरक्षित है और इसका उत्तर नहीं होना चाहिए!
एमकेएन वेब सॉल्यूशंस

8

स्टिरोइन्टेक्टिव का जवाब सभी विकल्पों को शामिल करता है। बस FTP का उपयोग करने के वैकल्पिक तरीके का उल्लेख करना चाहता था। मैं अनुमान लगा रहा हूं कि आप जिस कारण से एफ़टीपी की अनुमति नहीं दे रहे हैं वह सुरक्षा के लिए है। उन सुरक्षा चिंताओं को दूर करने का एक तरीका केवल 127.0.0.1 पर अपने एफ़टीपी सर्वर को चलाना है

यह आपको वर्डप्रेस के अंदर से एफ़टीपी का उपयोग करने की अनुमति देता है और आप इसे दुनिया के बाकी हिस्सों में उजागर नहीं करते हुए प्लगइन्स स्थापित करने में सक्षम होंगे। यह अन्य लोकप्रिय वेब एप्लिकेशन जैसे कि जूमला पर भी लागू किया जा सकता है! और द्रुपाल। यह हम अपने BitNami उपकरणों और क्लाउड सर्वर के साथ करते हैं और काफी अच्छी तरह से काम करते हैं।


8

मैं SSH SFTP अपडेटर समर्थन प्लगइन की भी सिफारिश करता हूं । बस मेरी सभी समस्याओं को हल किया ... विशेष रूप से व्यवस्थापक के माध्यम से हटाने के लिए प्लगइन्स प्राप्त करने के संबंध में। बस इसे सामान्य तरीके से स्थापित करें, और अगली बार जब आप वर्डप्रेस द्वारा एफ़टीपी विवरणों के लिए संकेत देते हैं, तो आपके लिए अपनी निजी SSH कुंजी को कॉपी / पेस्ट करने या अपनी PEM फ़ाइल अपलोड करने के लिए अतिरिक्त क्षेत्र होंगे।

मेरे पास केवल समस्या यह है कि कुंजी को याद रखने के लिए (दोनों तरीकों की कोशिश की)। एक प्लगइन को हटाने के लिए हर बार मुझे खोजने और इसे दर्ज करने का विचार पसंद नहीं है। लेकिन कम से कम यह अब के लिए एक ठोस तय है।


1
"आपकी निजी SSH कुंजी को कॉपी / पेस्ट करने के लिए आपके पास अतिरिक्त क्षेत्र होंगे" .... मैं एक सुरक्षा प्रतिभा नहीं हूं लेकिन ... निजी ssh कुंजी की संपूर्ण बात यह है कि आपको उन्हें कभी भी नेटवर्क पर नहीं भेजना है ?
उज्ज्वल

8

हां, वर्डप्रेस में सीधे प्लगइन इंस्टॉल करें।

  1. प्लगइन फ़ोल्डर कॉपी करें और वर्डप्रेस प्लगइन फ़ोल्डर में पेस्ट करें।
  2. admin side (/ test / wp-admin) पर जाएं फिर प्लगइन लिंक पर जाएं और प्लगइन का नाम जांचें।
  3. प्लगइन को सक्रिय करें ताकि प्लगइन को आसानी से स्थापित करें।

दूसरा विकल्प

  1. प्लगइन कोड के लिए ज़िप फ़ाइल बनाएँ।
  2. admin side (/ test / wp-admin) पर जाएं इसके बाद प्लगइन लिंक पर जाएं और फिर add new पर क्लिक करें फिर प्लगइन zip फोल्डर को ब्राउज करें और प्लगइन इंस्टॉल करें फिर ऑप्शन ऐक्टिवेट प्लग इन करें ताकि प्लगइन को एक्टिवेट करें और प्लगइन को सक्रिय करें।

6

वर्डप्रेस में एसएफटीपी या एसएसएच को ऑटो अपडेट प्लगइन्स का उपयोग करना संभव है, लेकिन आपके पास ssh2 pecl एक्सटेंशन होना चाहिए। आप निम्न ट्यूटोरियल का उपयोग करके पता लगा सकते हैं कि यह कैसे करना है


6

हम एसएफएच (हमारे विकास और लाइव सर्वर दोनों पर) के साथ एसएफटीपी का उपयोग करते हैं, और मैंने वर्डप्रेस अपलोड सुविधा का उपयोग करने के लिए (हालांकि बहुत मुश्किल नहीं) कोशिश की है। मैं टोबी से सहमत हूं, wp-content/pluginsनिर्देशिका में अपना प्लगइन अपलोड करें और फिर उन्हें वहां से सक्रिय करें।


6

मैंने बहुत से लोगों को 777 की अनुमति देने की सिफारिश करते हुए देखा। मुझे 2 दिन पहले भी यही समस्या थी और मैंने जो किया था, उसे wp-content में जोड़ें

define('FS_METHOD', 'direct');

तथा

प्लगइन फ़ोल्डर के लिए 775 की अनुमति सेट करें

इससे FTP एक्सेस लॉगिन / पासवर्ड पूछने की मेरी समस्या हल हो गई।

इससे पहले, मुझे प्लगइन फ़ोल्डर में .zip फ़ाइल जोड़कर मैन्युअल रूप से प्लगइन जोड़ना पड़ा और फिर wp-admin/pluginsइसे स्थापित करना पड़ा।


5

यह जांचें कि क्या wp-content फ़ोल्डर में सही अनुमति दी गई है।

Wp-config.php संपादित करें निम्नलिखित पंक्ति जोड़ें

define('FS_METHOD', 'direct');

पूर्ण पहुँच के लिए www-data में "wp-content" निर्देशिका को chmod करें।

अब प्लगइन को स्थापित करने का प्रयास करें।


4

हां तुम यह कर सकते हो।

आपको जोड़ने की आवश्यकता है

define('METHOD','direct');

अपने wpconfig में। लेकिन यह तरीका बेहतर नहीं होगा क्योंकि इसमें सुरक्षा आवाजें हैं।

धन्यवाद,


3

विधि 1: आप इसे सेट कर सकते हैं: 1. wp-config.php में आपको यह पंक्तियाँ लिखने की आवश्यकता है।

define('FS_METHOD', 'direct'); 

नोट: इसे परिभाषित करने के बाद डालें ('DB_CHARSET', 'utf8mb4')।

  1. wp-content अनुमति या अनुमति पुनरावर्ती 777 पूर्ण अनुमति आप filezilla के माध्यम से दे सकते हैं। निर्देशिका> अनुमतियों पर क्लिक करें> पढ़ने-लिखने की जाँच करें और निष्पादित करें और उपनिर्देशिका में पुनर्खरीद की जाँच करें

    विधि 2:

या आप इसे सेट भी कर सकते हैं

define("FTP_HOST", "localhost");
define("FTP_USER", "yourftpusername");
define("FTP_PASS", "yourftppassword");

फरवरी 2020 तक, यह एक स्पष्ट निर्देश है,Note: put this after define( 'DB_CHARSET', 'utf8mb4' ).
सत्यापित करें

2

एक ftp या यहां तक ​​कि एक SFTP कनेक्शन या chmod 777 की स्थापना एक स्थानीय वातावरण के अलावा अन्य किसी भी चीज़ के लिए जाने के बुरे तरीके हैं। यहां तक ​​कि एक SFTP विधि खोलने से अधिक सुरक्षा जोखिमों का परिचय होता है जिनकी आवश्यकता नहीं होती है।

क्या जरूरत है उन निर्देशिकाओं के स्वामी द्वारा / wp-content / uploads और / wp-content / plugins / के लिए एक लेखन योग्य अनुमति। (linux ls -la आपको स्वामित्व दिखाएगा)।

डिफ़ॉल्ट Apache उपयोगकर्ता जो चलाता है वह www-data है।

chmod 777 मशीन पर किसी भी उपयोगकर्ता को उन फ़ाइल को संपादित करने की अनुमति देता है, न कि केवल अपाचे / php थ्रेड उपयोगकर्ता।

एसएफटीपी यदि आप पहले से ही इसका उपयोग नहीं कर रहे हैं, तो बाहरी स्रोत से संभावित विफलता का एक और बिंदु पेश करेगा। जबकि आपको केवल उद्देश्य को पूरा करने के लिए एपाचे / php प्रक्रिया को चलाने वाले स्थानीय उपयोगकर्ता द्वारा पहुंच की आवश्यकता होती है।

किसी को भी इन बिंदुओं को बनाते हुए नहीं देखा, इसलिए मैंने सोचा कि मैं इस जानकारी को अपने निरंतर WP सुरक्षा मुद्दों के साथ ऑनलाइन मदद करने की पेशकश करूंगा।


2

यहाँ एक सरल विधि है।

निम्नलिखित आदेश निष्पादित करें।

यह अपाचे के लिए आपके mod_rewrite मॉड्यूल को सक्षम करेगा

$sudo a2enmod rewrite

यह कमांड फ़ोल्डर के मालिक को www-data में बदल देगा

$sudo chown -R www-data [Wordpress Folder Location]

आप कमांड के ऊपर निष्पादित करने के बाद आप एफ़टीपी के बिना किसी भी विषय को स्थापित कर सकते हैं।


1
Nginx के लिए सिर्फ दूसरी कमांडsudo chown -R www-data [Wordpress Folder Location]
srokatonie

@srokatonie टिप्पणी के लिए धन्यवाद। यह सभी के लिए उपयोगी होगा।
मनुजा जयवर्धना


1

जब आप वर्डप्रेस व्यवस्थापक डैशबोर्ड के माध्यम से किसी भी प्लगइन को अपलोड करने की अनुमति नहीं देंगे, जिसके कारण ही आपको wp-content निर्देशिका पर लिखने की अनुमति नहीं मिलती है। याद रखें कि आपके वर्डप्रेस डायरेक्टरी / wp-content के लिए 0755 अनुमति स्तर की आवश्यकता है। एक फ़ोल्डर की अनुमति स्तर को बदलने के विभिन्न तरीके हैं।

CPanel का उपयोग करके फ़ाइल अनुमतियां बदलना:

सार्वजनिक HTML फ़ोल्डर को खोलने के लिए फ़ाइल प्रबंधक पर जाएं जहां आपकी वर्डप्रेस वेबसाइट होने वाली है, या यदि आपकी वेबसाइट किसी अन्य फ़ोल्डर में है तो साइट रूट निर्देशिका को खोलें। अपने वर्डप्रेस रूट निर्देशिका में wp-content फ़ोल्डर की ओर नेविगेट करें; wp-content फ़ोल्डर पंक्ति के अंत में बहुत अंतिम बॉक्स इस फ़ोल्डर के लिए फ़ाइल अनुमति देता है। फ़ोल्डर की अनुमति स्तर को 0755 पर संपादित करना सुनिश्चित करें, और आप कर रहे हैं।

SSH टर्मिनल का उपयोग करके फ़ाइल अनुमतियां बदलना:

अपने टर्मिनल में वर्डप्रेस साइट की जड़ का पता लगाएं जो मेरे मामले में था / var / www / html ताकि वर्डप्रेस रूट डायरेक्टरी में स्थानांतरित हो सके, निम्नलिखित लिंक दर्ज करें:

cd /var/www/html 

अब आप वर्डप्रेस रूट डायरेक्टरी में हैं जहां आवश्यक फोल्डर / wp-content स्थित है। तो फ़ाइल अनुमतियाँ बदलने के लिए निम्न कमांड टाइप करें:

sudo chmod wp-content 755 

यह आपकी / wp-content निर्देशिका फ़ाइल की अनुमति को 0755 में बदल देगा।

अब आपको एफ़टीपी के माध्यम से वर्डप्रेस प्लगइन्स अपलोड करने का त्रुटि संदेश नहीं मिलेगा।


0

SSH का उपयोग करके प्लगइन स्थापित करने का सबसे अच्छा तरीका WPCLI है।

ध्यान दें कि, SSH का उपयोग WP CLI कमांड का उपयोग करने के लिए अनिवार्य है। यह जांचने से पहले कि आपके होस्टिंग सर्वर या मशीन पर WP CLI स्थापित है या नहीं।

जाँच कैसे करें: wp --version[यह wp cli संस्करण स्थापित दिखाएगा]

यदि स्थापित नहीं है, तो इसे कैसे स्थापित करें: WP-CLI स्थापित करने से पहले, कृपया सुनिश्चित करें कि पर्यावरण न्यूनतम आवश्यकताओं को पूरा करता है:

UNIX- जैसा वातावरण (OS X, Linux, FreeBSD, Cygwin); विंडोज वातावरण में सीमित समर्थन। PHP 5.4 या बाद में वर्डप्रेस 3.7 या बाद का। नवीनतम वर्डप्रेस रिलीज की तुलना में पुराने संस्करणों की कार्यक्षमता में गिरावट आ सकती है

यदि उपरोक्त बिंदु संतुष्ट हैं, तो कृपया निम्नलिखित चरणों का पालन करें: संदर्भ URL: WPCLI

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
[ download the wpcli phar ]

php wp-cli.phar --info [ check whether the phar file is working ]

chmod +x wp-cli.phar [ change permission ]
sudo mv wp-cli.phar /usr/local/bin/wp [ move to global folder ]
wp --info [ to check the installation ]

अब WP CLI स्थापित करने के लिए तैयार है।

अब आप निम्न आदेशों का उपयोग करके WordPress.org में उपलब्ध किसी भी प्लगइन को स्थापित कर सकते हैं:

wp install plugin plugin-slug
wp delete plugin plugin-slug
wp deactivate plugin plugin-slug

नोट: wp cli केवल उन प्लगइन को स्थापित कर सकता है जो wordpress.org में उपलब्ध हैं

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.