में सर्वर वैरिएबल को रिवाइट करना मेरे पास एक पुनर्लेखन नियम है, जो एक सबडोमेन के मान के साथ एक सर्वर चर बदलता है। यह subdomain.mydomain.nl/somethinghere पर काम करता है, लेकिन नहीं subdomain.mydomain.nl परIIS 7.5
<rule name="Change code" enabled="true" patternSyntax="ECMAScript" stopProcessing="false">
<match url=".*" ignoreCase="true" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="true">
<add input="{SERVER_NAME}" pattern="(www\.)?(\w+)\.mydomain\.nl" />
<add input="{SERVER_NAME}" pattern="^www.mydomain.nl.*" negate="true" />
<add input="{SERVER_NAME}" pattern="^mydomain.nl.*" negate="true" />
</conditions>
<serverVariables>
<set name="MYVARIABLE" value="{C:2}" />
</serverVariables>
<action type="None" />
</rule>
2 यूआरएल का परीक्षण किया है: 1: subdomain.mydomain.nl/somethinghere 2: subdomain.mydomain.nl
मैं निम्नलिखित कोड के साथ PHP में चर को पुनः प्राप्त:
echo $_SERVER['MYVARIABLE'];
यूआरएल 1 के मामले में, इस के उत्पादन में किया जाता है "के उप"।
यूआरएल 2 के मामले में, इसका आउटपुट "" है।
यूआरएल 1 का आउटपुट सही है, लेकिन यूआरएल 2 का आउटपुट "सबडोमेन" होना चाहिए।
मैंने दोनों अनुरोधों का एक निशान चलाया है, और वे दोनों दिखाते हैं कि नियम मिलान और निष्पादित किया जा रहा है।
क्या कोई मेरी मदद कर सकता है?
आपके उत्तर के लिए बहुत बहुत धन्यवाद, यह समाधान है। वास्तव में अजीब है कि मैं इस दस्तावेज किसी भी दस्तावेज नहीं मिला। – user1071188
अनुरोध शीर्षलेख सेट करने के लिए, HTTP_ जोड़ना आवश्यक है। यह दस्तावेज किया गया है [यहां] (http://learn.iis.net/page.aspx/665/url-rewrite-module-20-configuration-reference/#Setting_Server_Variables) (देखें "अनुरोध शीर्षलेखों के बारे में नोट")। मुझे यह भी पहेली भी है कि क्यों अनुरोध हेडर सेट करना हमेशा काम करता है लेकिन सर्वर चर सेट करना हमेशा काम नहीं करता है। –
धन्यवाद आदमी। तुमने मेरी जान बचाई! –