URL IIS Переписывает Правило или Пользовательские 404 Перенаправления Недопустимые URL с закодированными символами

Сначала добавьте RewriteBase, это разделит /images/ часть в строке запроса. Вы доберетесь photo.jpg?w=... вместо /images/photo.jpg?w=....

Второй добавляют /images/ к перенаправлению, потому что Ваше текущее перенаправление говорит для движения в http://mysite.com/thumbs/phpThumbs... вместо http://mysite.com/images/thumbs/phpThumbs....

Это дает что-то вроде этого:

 <IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /images/
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{QUERY_STRING} ^.+
    RewriteRule ([^\s]+(\.(?i)(jpg|png|gif|bmp))$) /images/thumbs/phpThumb.php?src=$1 [L,QSA]
 </IfModule>
2
задан 24 May 2012 в 02:25
1 ответ

Добавление пробелов (это% 20, это пробел в URL-кодировке) в конце URL-адреса, хотя и встречается редко. Довольно просто использовать модуль перезаписи URL для постоянного перенаправления посетителей на правильный URL:

<rule name="Redirect" stopProcessing="true">
    <match url="^Default\.aspx  $" />
    <action type="Redirect" url="/Default.aspx" />
</rule>

Вы также можете перезаписать, но я бы посоветовал сделать постоянное перенаправление, чтобы, надеюсь, не изменить неправильный URL, чтобы выжить в Интернете.

1
ответ дан 3 December 2019 в 13:09

Теги

Похожие вопросы