/ / Reguła warunkowego przepisywania w htacces, ale tylko czasami - .htaccess, przepisywanie adresów URL

Warunkowa reguła przepisywania w htacces, ale tylko czasami - .htaccess, przepisywanie adresu URL

Mam kilka prawidłowych adresów URL w mojej domenie, do których dostęp może być następujący:

  • mysite.com/somepage
  • www.mysite.com/someotherpage
  • mysite.com/thirdpage/other
  • itp

I niektóre adresy URL, które chcę przepisać w następujący sposób:

  • mysite.com/specialpage (do mysite.com/?specialpage)
  • www.mysite.com/veryspecialpage (do mysite.com/?veryspacialpage)

Zakładam, że musiałbym dokładnie dopasować strony specjalne (jedna reguła dla każdej), ale www. prefiks jest opcjonalny, jak mam to zrobić?

RewriteRule ^(www.)?/mysite.com/specialpage mysite.com/?specialpage [L,NC,QSA]
RewriteRule ^(www.)?/mysite.com/veryspecialpage mysite.com/?veryspecialpage [L,NC,QSA]

Ale nie mogę tego zrobić

Odpowiedzi:

1 dla odpowiedzi № 1

Reguła przepisywania wyrażenia regularnego nie pasuje do nazwy hosta, więc możesz ją po prostu pominąć:

RewriteRule ^specialpage$ /?specialpage [L,QSA]
RewriteRule ^veryspecialpage$ /?veryspecialpage [L,QSA]