Как убрать index.html из URL

По умолчанию в url-адресе главной страницы любого сайта отображается название индексного файла. В зависимости от типа расширения файла, url-адрес сайта может выглядеть так https://site.ru/index.html или так https://site.ru/index.php.

Сайт с таким адресом сложно продвигать в поисковых системах. Чтобы поисковые роботы продвигали сайт на более высокие позиции в выдаче, можно настроить перенаправление с site.ru/index.html на site.ru в локальном конфигурационном файле:

  • .htaccess — для хостинга на Linux,
  • web.config — для хостинга на Windows.

В файле достаточно прописать правило, благодаря которому веб-сервер будет перенаправлять посетителей на нужный URL. Как это сделать, мы рассказали ниже.

Как убрать index.html через .htaccess

1. В Личном кабинете перейдите в панель управления. Для этого в строке с названием нужной услуги хостинга нажмите на 3 точки и выберите Войти в панель управления:

2. В разделе “Главное” выберите Менеджер файлов и откройте корневую директорию сайта. Затем кликните по строке .htaccess и нажмите Изменить:

 
Если в корневой папке нет .htaccess

Внутри директории нажмите Создать:

Выберите тип Файл и введите название .htaccess. Затем нажмите Ok:

3. Добавьте в файл одно из правил, в зависимости от того, что вы хотите:

  • Убрать index.html из URL для главной страницы:

RewriteEngine On

RewriteRule ^index\.html$ / [R=301,L]

  • Убрать index.html из URL для всех страниц:

RewriteEngine On

RewriteRule ^index\.html$ / [R=301,L]

RewriteRule ^(.*)/index\.html$ /$1/ [R=301,L]

  • Убрать index.php из URL для главной страницы:

RewriteEngine On

RewriteRule ^index\.php$ / [R=301,L]

  • Убрать index.php из URL для всех страниц:

RewriteEngine On

RewriteRule ^index\.php$ / [R=301,L]

RewriteRule ^(.*)/index\.php$ /$1/ [R=301,L]

4. Сохраните изменения.

Как убрать index.html через web.config

1. В Личном кабинете перейдите в панель управления. Для этого в строке с названием нужной услуги хостинга нажмите на 3 точки и выберите Войти в панель управления:

 

2. В строке с доменным именем нажмите на значок “папка”, чтобы попасть в корневую директорию:

3. Кликните по названию файла web.config:

4. Добавьте в файл одно из правил, в зависимости от того, что вы хотите:

 
Убрать index.html из URL

1. Добавьте правило, чтобы подготовить страницу к редиректу:

<?xml version="1.0" encoding="UTF-8"?>

<configuration>
 <system.webServer>
              <rewrite>
                  <rules>
                      <rule name="Rewritehtml">
                          <match url="(.*)" />
                          <conditions logicalGrouping="MatchAll">
                              <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                              <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                          </conditions>
                          <action type="Rewrite" url="{R:1}.html" />
                      </rule>
                  </rules>
              </rewrite>
 </system.webServer>
</configuration>

2. Добавьте правило редиректа:


<?xml version="1.0" encoding="UTF-8"?>

<configuration>

 <system.webServer>

              <rewrite>
                  <rules>
                     <rule name="Redirect .html extension" stopProcessing="false">
                       <match url="^(.*).html$" ignoreCase="true" />
                  <conditions logicalGrouping="MatchAny">
                    <add input="{URL}" pattern="(.*).html$" ignoreCase="false" />
                  </conditions>
                       <action type="Redirect" url="{R:1}" redirectType="Permanent" />
                     </rule>
                     <rule name="hide .html extension" stopProcessing="true">
                       <match url="^(.*)$" ignoreCase="true" />
                  <conditions>
                    <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                    <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    <add input="{REQUEST_FILENAME}.html" matchType="IsFile" />
                  </conditions>
                       <action type="Rewrite" url="{R:0}.html" />
                     </rule>
                  </rules>
              </rewrite>
 </system.webServer>
</configuration>

 

 
Убрать index.aspx из URL

Добавьте правило редиректа:

<?xml version="1.0" encoding="UTF-8"?>

<configuration>
 <system.webServer>
              <rewrite>
                  <rules>
                      <rule name="Rewriteaspx">
                          <match url="(.*)" />
                          <conditions logicalGrouping="MatchAll">
                              <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                              <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                          </conditions>
                          <action type="Rewrite" url="{R:1}.aspx" />
                      </rule>
                  </rules>
              </rewrite>
 </system.webServer>
</configuration>

 

5. Сохраните изменения.

Если вы не нашли ответ, спросите у нас!
Написать в поддержку