Технически, для того чтобы скрыть расширение файлов .html на сайтах, можно использовать технологию "URL реврайтинга". URL реврайтинг - это процесс замены или изменения URL-адреса веб-страницы без изменения ее содержимого или расположения на сервере.
Для реализации URL реврайтинга вам нужно создать или изменить файл .htaccess, который содержит правила перезаписи URL-адресов. Вот пример правил для скрытия .html расширения в адресах страниц на сервере Apache:
```
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.html [NC,L]
```
Как это работает:
- `RewriteEngine On` - включает модуль перезаписи URL в Apache.
- `RewriteCond %{REQUEST_FILENAME} !-f` - проверяет, если запрашиваемый URL не соответствует имени существующего файла на сервере, то только тогда правило перенаправления применяется.
- `RewriteRule ^([^\.]+)$ $1.html [NC,L]` - перенаправляет URL без .html расширения на URL с .html расширением. `^([^\.]+)$` соответствует любой URL-адресу без точек (то есть без расширения), а `NC,L` указывает на регистронезависимое сравнение (NC) и на то, что эта правила является последней (L).
После этого файлы .html будут отображаться без расширения в браузере при обращении к страницам сайта. Также обратите внимание, что для работы этого правила нужно, чтобы веб-сервер поддерживал модуль перезаписи URL.
Верстка, CSS, HTML, SVG
Как сделать так чтобы на сайтах не отображалось расширение страниц .html?
Создай и положи в корень сайта файл .htaccess:

Антон Голиков
а на сайте обязательно CMS при этом должна быть?
Это как же ты собрался редактировать чужие сайты?
Антон Голиков
Не чужие. Свой
Всмысле?
RewriteEngine on
RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^.]+)\.html\ HTTP
RewriteRule ^([^.]+)\.html$ site.ru/$1 [R=301,L]
RewriteCond %{REQUEST_URI} !(\.[^./]+)$
RewriteCond %{REQUEST_fileNAME} !-d
RewriteCond %{REQUEST_fileNAME} !-f
RewriteRule (.*) /$1.html
site.ru замени на домен твоего сайта.
В .htaccess.
RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^.]+)\.html\ HTTP
RewriteRule ^([^.]+)\.html$ site.ru/$1 [R=301,L]
RewriteCond %{REQUEST_URI} !(\.[^./]+)$
RewriteCond %{REQUEST_fileNAME} !-d
RewriteCond %{REQUEST_fileNAME} !-f
RewriteRule (.*) /$1.html
site.ru замени на домен твоего сайта.
В .htaccess.
Изучать возможности волшебного файла .htaccess
Ну а в самом простом случае site.ru/index.html имя файла index.html можно вообще не писать.
Ну а в самом простом случае site.ru/index.html имя файла index.html можно вообще не писать.
Антон Голиков
а на сайте обязательно CMS при этом должна быть?
Аян Дуйсенбаев
Не обязательно.
Можно создать папку и в ней сделать HTML файл index.html
А дальше на любой другой странице писать путь к папке (без index.html)
А дальше на любой другой странице писать путь к папке (без index.html)
Никак
Похожие вопросы
- Как создать сайт из уже готовых страниц, написанных на HTML?
- Можно ли создать сайт исключительно на css и html, без других языков программирования с минимальной возможностью взлома?
- У каждой страницы html, должен быть свой файл css? Или можно один использовать для всех страниц ?
- Сколько берут за простой сайт, с 1-2 страницами, с парочкой несложных скриптов и админкой?
- Как создать сайт с многими страницами в HTML?
- html как сделать ссылку на главную страницу на сайте?
- Я сделал сайт в Html как мне теперь сделать на него ссылку, а то в адресной строке только его расположение.
- Есть мой сайт, он сделан на конструкторе. Могу я, как то скачать html код скачать, чтоб разместить его на любом хостинге?
- Как создать многостраничный сайт на HTML?
- Как сделать логин и пароль на сайте в html?