استبدل Apache Mod_Proxy_html: كيفية إعادة استخدام جزء من مطابقة Regex؟(متغيرات Regex؟)
سؤال
[الكشف الكامل: عبر البريد الشامل بين هنا و ServerFault، لأنني أعتقد أن الجماهير (مدراء الخادم و Devs) متميزة بما يكفي للتأكد من طرح السؤال على حد سواء بشكل منفصل.] مرحبا،
لديك موقف فريد من نوعه حول إعادة كتابة عنوان URL في Apache.
أحتاج إلى أن أكون قادرا على أخذ عنوان URL الذي يبدأ giveacodicetagpre.
أو giveacodicetagpre.
حيث x هو بقية بعض عنوان URL، واستبدل النص giveacodicetagpre.
لست متأكدا من أن Regex يعمل في Apache - أعتقد أنه هو نفسه Perl 5؟- ولكن حتى ذلك، أنا غير متأكد قليلا كيف سيتم ذلك.حليشتي هي أنه يجب القيام به مع تجميع Regex ثم استخدام $ 1 لسحب المتغير، لكنني غير مألوف تماما بهذه العملية في Apache.
على أمل أن يساعد شخص ما - شكرا!
المحلول
You are right. Group the text that you want to re-use with parens, and use $1
in the substitution. Use the following .htaccess file:
RewriteEngine On
RewriteRule ^\u002f(.*) /\u002fmeis2\u002f$1
(I am not certain that mod_rewrite handles unicode escapes, but it seems so from your question.)