উত্তর:
Wp-config.php এ কোড যুক্ত করার চেষ্টা করুন:
define('FS_METHOD', 'direct');
FS_METHOD
খুব কম FILESYSTEM_METHOD
। যখন আপনি direct
ফাইলগুলি -ly-সংশোধন করতে সংজ্ঞা দিচ্ছেন - ওরফে এফটিপি ব্যবহার করছেন না, তখন আপনি ওয়ার্ডপ্রেসকে সাইটে সরাসরি ফাইলগুলিতে চেষ্টা এবং পরিবর্তন করতে বাধ্য করছেন।
আপনি যদি উবুন্টু ব্যবহার করছেন।
sudo chown -R www-data:www-data PATH_TO_YOUR_WORDPRESS_FOLDER
www-data
: এখানে দেখতে codex.wordpress.org/Hardening_WordPress : এখানে বা stackoverflow.com/questions/18352682/...
"আপনি যখনই প্লাগিনগুলি স্বয়ংক্রিয়ভাবে ইনস্টল করতে, আপগ্রেড করতে বা মুছতে ওয়ার্ডপ্রেস নিয়ন্ত্রণ প্যানেলটি ব্যবহার করেন, তখন ওয়ার্ডপ্রেসকে ফাইল সিস্টেমে ফাইলগুলিতে পরিবর্তন করতে হবে।
কোনও পরিবর্তন করার আগে, ওয়ার্ডপ্রেস প্রথমে ফাইল সিস্টেমের সরাসরি ম্যানিপুলেটের অ্যাক্সেস আছে কিনা তা পরীক্ষা করে দেখে।
যদি ওয়ার্ডপ্রেসের সরাসরি ফাইল সিস্টেমটি সংশোধন করার জন্য প্রয়োজনীয় অনুমতি না থাকে, আপনাকে এফটিপি শংসাপত্রের জন্য জিজ্ঞাসা করা হবে যাতে ওয়ার্ডপ্রেস এফটিপি এর মাধ্যমে যা করার দরকার তা করার চেষ্টা করতে পারে। "
সমাধান: আপনার অ্যাপাচের উদাহরণটি কোন ব্যবহারকারী হিসাবে চলছে তা সন্ধান করার জন্য, নিম্নলিখিত বিষয়বস্তু দিয়ে একটি পরীক্ষা স্ক্রিপ্ট তৈরি করুন:
<?php echo(exec("whoami")); ?>
আমার জন্য, এটি ডেমোন ছিল এবং www-ডেটা নয়। তারপরে, এর মাধ্যমে অনুমতিটি ঠিক করুন:
sudo chown -R daemon /path/to/your/local/www/folder
<?php echo(exec("id")); ?>
যা আপনাকে ব্যবহারকারীর আইডি ছাড়িয়েও গোষ্ঠী ডেটা সরবরাহ করবে:uid=5018(web27) gid=5012(client7) groups=5012(client7),5002(sshusers)
whoami
একই তথ্যটি দেখুন:sudo chown -R `whoami` /path/to/your/local/www/folder
ওএসএক্স-এ, আমি নিম্নলিখিতটি ব্যবহার করেছি এবং এটি কাজ করেছে:
sudo chown -R _www:_www {path to wordpress folder}
_www এমন ব্যবহারকারী যা পিএইচপি ম্যাকের অধীনে চলে।
(আপনার কিছু ফোল্ডারও chmod করার দরকার হতে পারে। আমি এটি প্রথমে করেছিলাম এবং এটি ঠিক করে নি। এটি কাজ করার মতো chown কমান্ড না করা পর্যন্ত এটি ছিল না, সুতরাং আমি নিশ্চিত নই যে এটি chown আদেশ ছিল কিনা একা, বা chmod এবং chown এর সংমিশ্রণ।)
আমি বারবার ওয়ার্ডপ্রেস ফোল্ডারের মালিকানাটি ডাব্লু-ডেটাতে পুনরাবৃত্তি করে এবং অ্যাপাচি পুনরায় শুরু করেছি।
sudo chown -R www-data:www-data <folderpath>
এটি একটি মোহন মত কাজ!
ওয়ার্ডপ্রেস আপনার FTP শংসাপত্রগুলির জন্য জিজ্ঞাসা করে যখন এটি সরাসরি ফাইলগুলিতে অ্যাক্সেস করতে পারে না। এটি সাধারণত পিএইচপি দ্বারা আপনার ওয়ার্ডপ্রেস ফাইলগুলির মালিকানাধীন অ্যাপাচি ব্যবহারকারী (mod_php বা CGI) হিসাবে চালিত হয়।
বেশিরভাগ ভাগ করা হোস্টিং পরিবেশে এটি বরং স্বাভাবিক - ফাইলগুলি ব্যবহারকারী হিসাবে সংরক্ষণ করা হয়, এবং অ্যাপাচি ব্যবহারকারী হিসাবে apache
বা চলমান httpd
। এটি আসলে একটি ভাল সুরক্ষা সতর্কতা তাই শোষণ এবং হ্যাক হোস্ট করা ফাইলগুলি পরিবর্তন করতে পারে না। আপনি সমস্ত ডাব্লুপি ফাইলগুলি 77 777 সুরক্ষায় সেট করে এটিকে বিঘ্নিত করতে পারেন, তবে এর অর্থ কোনও সুরক্ষা নেই, তাই আমি এর বিরুদ্ধে অত্যন্ত পরামর্শ দেব। কেবল এফটিপি ব্যবহার করুন, এটি সঠিক কারণে স্বয়ংক্রিয়ভাবে পরামর্শ দেওয়া।
প্রথমে আপনার ইনস্টলেশন ফোল্ডারে যান (উদাহরণস্বরূপ)
cd /Applications/XAMPP/xamppfiles/
এখন আমরা আপনার htdocs ডিরেক্টরিটি সংশোধন করতে যাচ্ছি:
sudo chown -R daemon htdocs
জিজ্ঞাসা করা হলে আপনার মূল পাসওয়ার্ডটি প্রবেশ করুন, তারপরে একটি chmod কল দিয়ে এটি শেষ করুন:
sudo chmod -R g+w htdocs
আমি এখানে উল্লিখিত এবং কেবল চলমান পদক্ষেপগুলি অনুসরণ করে উবুন্টু 14.04 এ ওয়ার্ডপ্রেসের একটি স্থানীয় ইনস্টল করেছি :
sudo chown -R www-data:www-data {path_to_your_project_directory}
প্লাগিনগুলি ডাউনলোড করে আমার সমস্যা সমাধান করুন। আমি এই পোস্টটি এখানে রাখার একমাত্র কারণ হ'ল যখন আমি আমার সমস্যাটি গুগল করলাম তখন এটি প্রথম ফলাফলগুলির মধ্যে একটি ছিল এবং এটি আমার সমস্যার সমাধানের দিকে নিয়ে যায়।
আশা করি এই যে কারও সাহায্য করবে!
আরও বড় সমস্যার অংশ হিসাবে আমাদের একই সমস্যা ছিল। এর প্রস্তাবিত সমাধান
define('FS_METHOD', 'direct');
সেই উইন্ডোটি আড়াল করে তবে তারপরেও থিম এবং আপগ্রেড ইত্যাদি লোড করার ক্ষেত্রে আমাদের এখনও সমস্যা ছিল এটি অনুমতি সম্পর্কিত তবে আমাদের ক্ষেত্রে আমরা পিএইচপি ওএস বিক্রেতা মোডেএফপি থেকে আরও সুরক্ষিত পিএইচপি ওএস বিক্রেতাকে ফাস্টসিজিআই অ্যাপ্লিকেশনটিতে স্থানান্তরিত করে সমস্যার সমাধান করেছি ।
যদি কোনও প্লাগইন ইনস্টল করার সময়, ওয়ার্ডপ্রেস আপনার হোস্টনাম বা এফটিপি বিবরণ জিজ্ঞাসা করে। তারপরে এই পদক্ষেপগুলি অনুসরণ করুন:
আপনার সার্ভারে লগইন করুন এবং / var / www / এইচটিএমএল / ওয়ার্ডপ্রেস / এ নেভিগেট করুন । Wp-config.php খুলুন এবং সংজ্ঞায়নের পরে এই লাইনটি যুক্ত করুন ('DB_COLLATE')
define('FS_METHOD', 'direct');
যদি আপনি "ডিরেক্টরি তৈরি করতে পারেনি" ত্রুটি পান। আপনার ওয়ার্ডপ্রেস ডিরেক্টরিতে পুনরাবৃত্তিতে লেখার অনুমতি দিন
chmod -R go+w wordpress
বিঃদ্রঃ. সুরক্ষার জন্য, আপনি একবার হিসাবে কোনও প্লাগইন ইনস্টল করার পরে এই অনুমতিগুলি প্রত্যাহার করুন
chmod -R go-w wordpress
এই সমস্যাটি সমাধানের সহজতম উপায় হ'ল আপনার মধ্যে নিম্নলিখিত এফটিপি তথ্য যুক্ত করুন wp-config.php
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/');
FTP_BASE হ'ল ওয়ার্ডপ্রেস ইনস্টলেশনের "বেস" (ABSPATH) ফোল্ডারের পুরো পথ FTP_CONTENT_DIR হ'ল ওয়ার্ডপ্রেস ইনস্টলেশনের WP- সামগ্রী ফোল্ডারের সম্পূর্ণ পথ। FTP_PLUGIN_DIR হ'ল ওয়ার্ডপ্রেস ইনস্টলেশনটির প্লাগইন ফোল্ডারের পুরো পথ।
নীল দ্বারা উল্লিখিত হিসাবে, এটি ঘটে কারণ সার্ভার প্রক্রিয়া ব্যবহারকারী ওয়ার্ডপ্রেস ফোল্ডারে লিখতে পারেন না।
তবে এখানে জিনিসটি প্রচুর নিবন্ধটি ব্যাখ্যা করে না। এটি পিএইচপি প্রক্রিয়াটির মালিক, এনগিনেক্স প্রক্রিয়া নয়। আপনি যদি এনজিনেক্সের মালিককে পরিবর্তন করার চেষ্টা করেন তবে এটি সমাধান করবে না।
এটি সমাধান করার জন্য, ps aux
কোন ব্যবহারকারী পিএইচপি-এফপিএম প্রক্রিয়াটির মালিক তা দেখার জন্য দৌড়ে চেষ্টা করুন । তারপরে পরীক্ষা করুন যে ব্যবহারকারীটি ওয়ার্ডপ্রেস ফোল্ডারের মালিক হিসাবে একই ব্যবহারকারী বা কমপক্ষে এটিতে লিখতে পারেন। যদি ব্যবহারকারী এতে লিখতে না পারেন তবে আপনাকে অনুমতি এবং / অথবা ফোল্ডারের মালিকানা পরিবর্তন করতে হবে; অথবা দুটি ব্যবহারকারীকে (সার্ভারের মালিক এবং ওয়ার্ডপ্রেস ফোল্ডার মালিক) একটি সাধারণ গ্রুপে রাখুন যা ফোল্ডারে লিখতে পারে; অথবা ফোল্ডারে লিখতে পারে এমন কোনও ব্যবহারকারীকে php.ini "ব্যবহারকারীর" সম্পত্তি পরিবর্তন করুন।
এই প্রশ্নের অনেকগুলি অনুরূপ প্রতিক্রিয়া রয়েছে, তবে এর কোনওটিই মূল কারণে পুরোপুরি স্পর্শ করে না। মূল পোস্টে সেবাস্তিয়ান শ্মিডের মন্তব্য এতে স্পর্শ করেছে তবে পুরোপুরি নয়। 2018-11-06 হিসাবে আমার নেওয়া এখানে:
মূল কারণ
আপনি যখন ওয়ার্ডপ্রেস অ্যাডমিন ইন্টারফেসের মাধ্যমে প্লাগইন আপলোড করার চেষ্টা করবেন, তখন ওয়ার্ডপ্রেস "get_files systemmmemod ()" নামক একটি ফাংশনটিতে কল করবে (রেফ: / wp-admin / includes / file.php1549 )এই রুটিনটি প্রশ্নযুক্ত অবস্থানে কোনও ফাইল লেখার চেষ্টা করবে (এই ক্ষেত্রে প্লাগইন ডিরেক্টরি)। এটি অবশ্যই এখানে অবিলম্বে ব্যর্থ হতে পারে যদি ওয়ার্ডপ্রেস ব্যবহারকারীদের (পিএইচপি ব্যবহারকারীর পরিচয় মনে করে) প্রশ্নযুক্ত অবস্থানে ফাইলটি লেখার অনুমতি দেওয়ার জন্য ফাইল অনুমতিগুলি সঠিকভাবে সেটআপ না করা হয়।
যদি ফাইলটি তৈরি করা যায়, তবে এই ফাংশনটি অস্থায়ী ফাইলের ফাইল মালিকের সাথে ফাংশনটির বর্তমান ফাইলের ফাইলের মালিক (রেফার: / wp-admin / includes / file.php1572 ) সনাক্ত করে এবং দুটিটির সাথে তুলনা করে। যদি সেগুলির সাথে মিল হয়, তবে ওয়ার্ডপ্রেসের কথায়, "ওয়ার্ডপ্রেস ওয়ার্ডপ্রেস ফাইলগুলির মতো একই মালিক হিসাবে ফাইল তৈরি করছে, এর অর্থ এটি পিএইচপি এর মাধ্যমে নতুন ফাইলগুলি সংশোধন করা ও তৈরি করা নিরাপদ" এবং আপনার প্লাগইনটি এফটিপি শংসাপত্র প্রম্পট ছাড়াই সফলভাবে আপলোড হয়। যদি সেগুলি মেলে না, আপনি এফটিপি শংসাপত্রগুলি প্রম্পট পাবেন।
সংশোধন
আপনার পিএইচপি প্রক্রিয়াটি যে পরিচয়টি চালিয়ে যাচ্ছে তা নিশ্চিত করুন যে কোনও একজনের জন্য ফাইলের মালিক:
ক) সমস্ত ওয়ার্ডপ্রেস অ্যাপ্লিকেশন ফাইল, বা ...
খ) খুব কমপক্ষে /wp-admin/includes/file.php ফাইল
চূড়ান্ত মন্তব্য
আমি এই সমস্যাটি নিয়ে কাজ করার জন্য ফাইল.এফপিএলে ফাইলের মালিকানা সুনির্দিষ্টভাবে প্রয়োগ করার বিষয়ে অত্যধিক আগ্রহী নই (এটি কমপক্ষে বলার মতো বাচ্চা হ্যাকি বোধ করে!)। আমার কাছে এই মুহুর্তে মনে হচ্ছে যে ওয়ার্ডপ্রেস কোড বেসটি আমাদের পিএইচপি প্রক্রিয়াটি একই ব্যবহারকারী অধ্যক্ষের অধীনে ওয়ার্ডপ্রেস অ্যাপ্লিকেশন ফাইলগুলির জন্য ফাইলের মালিক হিসাবে চালিত করার দিকে ঝুঁকছে। আমি সম্প্রদায় থেকে এই সম্পর্কে কিছু মন্তব্য স্বাগত জানাতে হবে।