/ / मैं Nginx के लिए mod_rewrite (QSA विकल्प) को कैसे परिवर्तित करूं? - रेगेक्स, मॉड-रीराइट, नेग्नेक्स

मैं mod_rewrite (QSA विकल्प) को Nginx समकक्ष में कैसे परिवर्तित करूं? - regex, mod-rewrite, nginx

मैं निम्नलिखित परिवर्तित करने के लिए देख रहा हूँ mod_rewrite के लिए शासन Nginx समकक्ष:

RewriteRule ^foo/(.*)$ /bar/index.php?title=$1 [PT,L,QSA]
RewriteRule ^foo/*$ /bar/index.php [L,QSA]

अब तक मेरे पास है:

rewrite ^foo/(.*)$ /bar/index.php?title=$1&$query_string last;
rewrite ^foo/?$ /bar/index.php?$query_string break;

समस्या यह है (मुझे लगता है!) कि क्वेरी स्ट्रिंग "जोड़ा नहीं जाता है। मैं" नहीं "पोर्ट के लिए एक रास्ता मिल गया QSA Nginx के लिए तर्क।

उत्तर:

उत्तर № 1 के लिए 16

QIN NGINX में स्वचालित है।

यदि आप इसे नहीं चाहते हैं, तो अपने नए स्थान के अंत में इसे जोड़ें

rewrite ^ / foo /bar/index.php? पिछले;


जवाब के लिए 5 № 2

इन पुनर्लेखन नियमों ने लिपियों को काम दिया:

rewrite ^/foo/([^?]*)(?:?(.*))? /bar/index.php?title=$1&$2;
rewrite ^/foo /bar/index.php;