কোন "সম্পদ ইউআরএল" ভ্যানিলা "ম্যানুয়াল ইন্সটলে গ্রহণযোগ্য?


9

ওয়ার্ডপ্রেস অনেকগুলি ইউআরআই দ্বারা একটি এমইউ ইনস্টলের মাধ্যমে বিষয়বস্তুটিকে সম্বোধন করতে দেখা যাচ্ছে। উদাহরণ স্বরূপ:

 example.com/wp-content/blogs.dir/5/files/picture.jpg
 example.com/bob/files/picture.jpg
 example.com/bob/wp-content/blogs.dir/5/files/pictures.jpg

সমস্ত একই জায়গায় রুটে উপস্থিত হয়। আরও কি উপাধি আছে? কোনটি প্রামাণিক? এগুলির মধ্যে কোনও দুর্ঘটনাক্রমে? প্রাসঙ্গিক ফিল্টার আছে?

উত্তর:


4

সংক্ষিপ্ত উত্তর

উদাহরণস্বরূপ . com/bob/files/picture.jpg একটি ওয়ার্ডপ্রেস মাল্টিসাইট ইনস্টলেশন মধ্যে ইমেজগুলির জন্য পছন্দসই, ক্যানোনিকাল ইউআরএল । ইউআরএল সহ দুটি ইউআরএল blogs.dirমূলত অভিন্ন এবং উভয়ই ফাইল সিস্টেমের কাঠামোটি লাভ করে। 'বব' সহ পাথটি বিদ্যমান কারণ আপনি একটি সাব-ডিরেক্টরি ইনস্টল করেছেন, সাবডোমেন ইনস্টল নয়। অন্যান্য পাথগুলি আপনার অন্যান্য সাইটের উপর ভিত্তি করে উপস্থিত থাকবে, উদাহরণস্বরূপ যেমন: //fred/wp-content/blogs.dir/5/files/pictures.jpg। অন্যথায়, অন্য কোনও পথের অস্তিত্ব নেই।

দীর্ঘ উত্তর

এই প্রক্রিয়াটি সম্পর্কে অনেক কিছুই ব্যাখ্যা করতে পারে, এবং আপনি যে স্তরের সন্ধান করছেন তার মাত্রা সম্পর্কে আমি 100% নির্দিষ্ট নই, তাই আমি এখানে বেসিকগুলি আঁকছি।

ওয়ার্ডপ্রেস মাল্টিটাইট ফাইলগুলিকে blog_id("" / "ব্লগস.ডির /" পরে "5") সংরক্ষণ করে জিনিসগুলিকে সংগঠিত রাখতে এবং বিভিন্ন সাইটের ফাইল পৃথক করে। এই ডিরেক্টরি কাঠামোটি সর্বজনীন হওয়ার উদ্দেশ্যে নয়। ওয়ার্ডপ্রেস পুনরায় লেখার নিয়মগুলি রুট ^files/(.+)করতে ব্যবহার করে wp-includes/ms-files.php?file=$1এবং তারপরে wp-includes/ms-files.phpচিত্রটি এবং / অথবা কিছু সহায়ক শিরোনাম প্রসেস করে এবং আউটপুট দেয়। এর কয়েকটি সুবিধা রয়েছে:

  • সুরক্ষার ক্ষেত্রে, কম তথ্য সর্বদা ভাল। "ডাব্লুপি-কনটেন্ট / ব্লগস.ডি.আর / ৫" একটি সামান্য টিএমআই - এটি বলছে যে আপনি ওয়ার্ডপ্রেস মাল্টিসাইট চালাচ্ছেন এবং এটি blog_id5 টি।
  • ইউআরএল কাঠামোটি একক-সাইট ইনস্টলেশনগুলির মতো ical আপনি যদি কোনও মাল্টিসাইট ইনস্টলেশন থেকে কোনও সাইটকে নিজের জায়গায় স্থানান্তরিত করতে চান তবে আপনাকে সেই তথ্যসূত্রগুলি ডাটাবেসে আপডেট করতে হবে না বা বাহ্যিক রেফারেন্সের জন্য 301 পুরানো পথগুলি আপডেট করতে হবে না।
  • আপনি পাবলিক এক্সেস থেকে বের বা ফাইল ডিরেক্টরি স্থানান্তর করতে পারেন deny from allমাধ্যমে .htaccessতাই হয়, উদাহরণস্বরূপ, মানুষ প্রকৃত চিত্র মাপ যদি আপনি চান না অ্যাক্সেস করতে পারছি না।
  • আপনি নির্দিষ্ট ফাইলগুলিতে অ্যাক্সেস নিয়ন্ত্রণ যুক্ত করতে পারেন

এর একটি প্রধান অসুবিধা রয়েছে, যা হ'ল চিত্র / ফাইলগুলি পিএইচপি এর মধ্য দিয়ে যাচ্ছে (এবং সম্ভবত কয়েকটি মাইএসকিউএল কোয়েরিও প্রয়োজন), সুতরাং এর জন্য আরও সংস্থান প্রয়োজন। আপনার যদি ক্যাচিং প্লাগইন ইনস্টল থাকে তবে অতিরিক্ত সংস্থানগুলি নগদ হওয়া উচিত।

ফিল্টারগুলির সাথে সম্পর্কিত, আপনি সহজেই এক কারণে প্রসেসের কোনও কিছুই ফিল্টার করতে পারবেন না: মি-প্লাগইন , প্লাগইন বা আপনার থিম দুটিই লোড হবে না। আপনি যা করতে পারেন তা হ'ল ডাব্লুপি-কনফিগারেশন। আপনি ওভাররাইড করতে পারেন এমন সবচেয়ে দরকারী / প্রাসঙ্গিক স্থিরতা এখানে রয়েছে:

if ( !defined( 'UPLOADBLOGSDIR' ) )
    define( 'UPLOADBLOGSDIR', 'wp-content/blogs.dir' );

if ( !defined( 'UPLOADS' ) ) {
    // Uploads dir relative to ABSPATH
    define( 'UPLOADS', UPLOADBLOGSDIR . "/{$wpdb->blogid}/files/" );
    if ( 'wp-content/blogs.dir' == UPLOADBLOGSDIR )
        define( 'BLOGUPLOADDIR', WP_CONTENT_DIR . "/blogs.dir/{$wpdb->blogid}/files/" );
}

/**
 * Optional support for X-Sendfile header
 */
if ( !defined( 'WPMU_SENDFILE' ) )
    define( 'WPMU_SENDFILE', false );

/**
 * Optional support for X-Accel-Redirect header
 */
if ( !defined( 'WPMU_ACCEL_REDIRECT' ) )
    define( 'WPMU_ACCEL_REDIRECT', false );

* যদিও প্লাগইনগুলি লোড হয় না, ড্রপ-ইনগুলি করে। অতএব, আপনি যখন স্ট্যান্ডার্ড প্লাগইন ব্যবহার করতে পারবেন না, তখনও ওয়ার্ডপ্রেস সংবেদনশীল ফাইলগুলিতে অ্যাক্সেস নিয়ন্ত্রণ যুক্ত করে (যেমন উপরে বর্ণিত) আপনার প্রয়োজন মতো করার জন্য ভিত্তি স্থাপন করে। ড্রপ-ইন sunrise.phpএই জাতীয় কোড যুক্ত করার জন্য একটি ভাল জায়গা হবে।


2

মাল্টিসাইট ইনস্টলগুলিতে ওয়ার্ডপ্রেস ৩.৫ বা তারপরে সেটআপে ms-files.phpসরাসরি বাইপাস করা হয়, এবং blogs.dirব্যবহৃত হয় না।

পরিবর্তে, আপলোডগুলি সংরক্ষণ করা হয় wp-content/blogs/{blog_id}এবং এটি হিসাবে উল্লেখ করা হয়। এর অর্থ একটি সাবডোমেন ইনস্টল ফাইলগুলিতে অ্যাক্সেস করার একমাত্র উপায় এবং উপ-ডিরেক্টরি ইনস্টলে কেবল দুটি উপায়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.