আসলে অ্যাপাচি এবং ওয়ার্ডপ্রেসের মধ্যে কোনও যোগাযোগ হচ্ছে না। "ম্যাজিক" ঘটছে অ্যাপাচি mod_rewriteনিয়মে।
একটি স্ট্যান্ডার্ড ওয়ার্ডপ্রেস ইনস্টলেশন জন্য, আপনার নিম্নলিখিত নিয়ম আছে .htaccess:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
এই লাইনটি লক্ষ্য করুন: RewriteRule . /index.php [L]
এখানে, আমরা অ্যাপাচিকে অভ্যন্তরীণভাবে কোনও ইউআরএল অনুরোধে পুনর্নির্দেশ করতে বলছি /index.php।
যদি না: এই লাইনটিRewriteCond %{REQUEST_FILENAME} !-fমিথ্যা হয়ে যায়। তার মানে, উপরোক্তটিরRewriteCondসাথে এটিযুক্ত করেRewriteRuleআমরা আপাচে সমস্ত অনুরোধ প্রেরণ করার জন্য বলছি/index.php, তবে এটি কোনও বিদ্যমান ফাইল নয় ।
এছাড়াও, যখন এই লাইন:RewriteCond %{REQUEST_FILENAME} !-dমিথ্যা হয়ে যায়। তার মানে, উপরোক্তটিরRewriteCondসাথে এটিযুক্ত করেRewriteRuleআমরা আপাচিকে সমস্ত অনুরোধ প্রেরণ করতে বলছি/index.php, তবে এটি যদি কোনও বিদ্যমান ডিরেক্টরি না থাকে তবে ।
সুতরাং শেষ পর্যন্ত, এটি কোনও বিদ্যমান ফাইল বা বিদ্যমান ডিরেক্টরি না থাকলে আপাচি অভ্যন্তরীণভাবে সমস্ত অন্যান্য অনুরোধ প্রেরণ করছে /index.php।
সুতরাং আপনি যেমন দেখেন, অ্যাপাচি এবং ওয়ার্ডপ্রেসের মধ্যে কোনও যোগাযোগ হচ্ছে না। অ্যাপাচি সব কিছু নিজেই স্থির করে নিচ্ছে এবং আমরা এটি ব্যবহার RewriteRuleএবং RewriteCondনির্দেশনা ব্যবহার করার জন্য বলছি ।
mod_rewriteএখানে আরও পড়ুন ।