سؤال

لدي رابط لالسابقين: http://dominename:port/first/1/second/2/third/3 وتريد إعادة الكتابة إلى http://dominename:port/first=1/second=2/third=3.يمكنني الحصول على أول والحصول على 1.ولكن لمدة سنتين وثلاثة كيف يمكنني الحصول عليه?

أدناه هو رمز بلدي للحصول على أول:

 <rule>
    <from>^/first/(.*)$</from>
    <to type="forward">/dominename:port/first=1</to>
</rule>

شكراً!

هل كانت مفيدة؟

المحلول

يمكنك الوصول إلى تعبيرات الاستبدال العادية بواسطة $1 , $2, ...

<rule>
    <from>^/first/(.*)/second/(.*)/third/(.*)$</from>
    <to type="forward">/first=$1/second=$2/third=$3</to>
</rule>

ولكن هذا لن ينجح ، لأنه لا يمكن أن يكون = في طريق رابط!

لذا ما يجب عليك فعله هو هذا:

<rule>
    <from>^/first/(.*)/second/(.*)/third/(.*)$</from>
    <to type="forward">something?first=$1&second=$2&third=$3</to>
</rule>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top