У меня есть веб-приложение, которое служит изображениям, основанным на субдомене.Как заменить «тире» на «подчеркивание» в правиле IIRF?
Мы хотели предоставить нашим пользователям с URL, как это: http://{username}.domain.com/images/myimage.jpg
Вместо того, что мы привыкли иметь: http://www.reallylongdomainname.com/users/{username}/images/myimage.jpg
Это делает URL короче и меньше «snoopable».
Итак, я создал файл IIRI .IIR, чтобы выполнить перерисовку URL, и он отлично работает, за исключением того факта, что некоторые из наших папок пользователей имеют знак подчеркивания. И из того, что я прочитал, подчеркивание не является допустимым символом в доменном имени (хотя IIS поддерживает его).
Я хочу знать, как я мог бы сделать найти и заменить в ссылке $1
обратно, так что URL, как это:
http://some-user.domain.com/...
Может быть переписан так:
/users/some_user/..
Вот мое правило IIRF.
RewriteCond %{HTTP_HOST} ^(?!www)([^\.]+)\.domain\.com
RewriteRule ^/(.*)$ /users/*1/$1 [L,I]
Спасибо за любую помощь.
У любого пользователя есть тире в имени пользователя (так что правильный переписанный URL-адрес должен быть/users/some-user /)? – pkaeding
Нет, они этого не делают. Я имею дело с унаследованной системой, которая имеет четко определенную структуру каталогов. – jessegavin