0

Я разместил свой сайт на сервере Windows по адресу 1&1. Там, невозможно добавить на web.config элементы <rewrite><rules> ... Так что я использую файл .htaccess ... Я не настолько эксперт, я ожидал, что он будет работать только на сервере Apache. Я был неправ! Мой .hataccess работает также и с IIS.Перенаправление с не-www на www с использованием 301 на IIS

Вот код:

//Rewrite to www 
RewriteEngine On 
RewriteCond %{HTTP_HOST} !^www\. 
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}$1 [R=301,L] 

//Prevent viewing of .htaccess file 
<Files .htaccess> 
order allow,deny 
deny from all 
</Files> 

Проблема редирект делается с помощью 302. Я хочу 301 редирект. Я использую скрипач и это результат:

enter image description here

Сайт, где у меня есть проблема www.renovahaus.it Как я могу решить мою проблему?

Thanx

ответ

0

Это обычно делается с помощью модуля URLRewrite, в случае 1 & 1 эта функция отключена в web.config однако при использовании файла .htaccess содержимое .htaccess еще переведенной к базовому web.config.

Вы можете прочитать большой учебник о процессе преобразования here

Но краткое изложение вы, вероятно, ищете блок кода: -

RewriteCond %{HTTP_HOST} ^example\.com$ [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301] 

Который должен прозрачно добавить следующие строки в Интернет. config (хотя вы не можете отредактировать его напрямую)

<rewrite> 
    <rules> 
    <rule name="Imported Rule 1" stopProcessing="true"> 
     <match url="^(.*)$" ignoreCase="false" /> 
     <conditions> 
     <add input="{HTTP_HOST}" pattern="^example\.com$" /> 
     </conditions> 
     <action type="Redirect" redirectType="Permanent" url="http://www.example.com/{R:1}" /> 
    </rule> 
    <rule name="Imported Rule 2" stopProcessing="true"> 
     <match url="^(.*)$" ignoreCase="false" /> 
     <conditions> 
     <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" /> 
     <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" /> 
     <add input="{URL}" pattern="^/favicon.ico$" ignoreCase="false" negate="true" /> 
     </conditions> 
     <action type="Rewrite" url="index.php?q={R:1}" appendQueryString="true" /> 
    </rule> 
    </rules> 
</rewrite> 
+0

но почему .htaccess перенаправление файлов с использованием 302, а не 301? – Ciccio

 Смежные вопросы

  • Нет связанных вопросов^_^