वास्तव में अपाचे और वर्डप्रेस के बीच कोई संचार नहीं हो रहा है। "जादू" अपाचे 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]
यहां, हम अपाचे को किसी भी URL अनुरोध को आंतरिक रूप से पुनर्निर्देशित करने के लिए कह रहे हैं /index.php।
जब तक: यह रेखा:RewriteCond %{REQUEST_FILENAME} !-fझूठी नहीं हो जाती। इसका मतलब है किRewriteCondऊपर के साथइसे जोड़ने केसाथRewriteRule, हम अपाचे को सभी अनुरोधों को भेजने के लिए कह रहे हैं/index.php, लेकिन अगर यह एक मौजूदा फ़ाइल नहीं है ।
इसके अलावा, जब यह रेखा:RewriteCond %{REQUEST_FILENAME} !-dझूठी हो जाती है। इसका मतलब है किRewriteCondउपरोक्त के साथइसे जोड़ने केसाथRewriteRule, हम अपाचे को सभी अनुरोध भेजने के लिए कह रहे हैं/index.php, लेकिन यह नहीं कि यह एक मौजूदा निर्देशिका है ।
इसलिए अंत में, जब तक यह एक मौजूदा फ़ाइल या मौजूदा निर्देशिका नहीं है, अपाचे आंतरिक रूप से अन्य सभी अनुरोधों को भेज रहा है /index.php।
तो जैसा कि आप देख रहे हैं, अपाचे और वर्डप्रेस के बीच कोई संचार नहीं हो रहा है। अपाचे सब कुछ खुद तय कर रहा है और हम इसे ऐसा करने RewriteRuleऔर RewriteCondनिर्देशों का उपयोग करने के लिए कह रहे हैं ।
के बारे में और अधिक पढ़ें mod_rewriteयहाँ ।