Это связано с тем, что вы используете относительные пути к своим ресурсам (CSS, JS и файлам изображений). Вам нужно использовать либо относительные корневые (начинающиеся с косой черты), либо абсолютные URL-адреса.
В качестве альтернативы используйте элемент base
в разделе head
, который сообщает браузеру, к чему относятся относительные URL-адреса. Например:
<base href="http://example.com/">
(Обратите внимание, однако, что есть предостережения при использовании тега base
, если у вас есть якоря на странице, например, href="#top"
, или вам нужна поддержка IE6?!)
Однако, если вы введете другой путь http://example.com/another/test.html
, страница 404 также появится, но ссылки на css и изображения не работают.
Например, URL-адрес типа css/normalize.css
на странице по этому адресу будет преобразован в http://example.com/another/css/normalize.css
, когда вы ожидаете, что он будет относиться к корню документа.
Кроме того, URL-адрес иногда разрешается в http://example.com/example.com/kontakt
, имея там фактический домен example.com
.
Похоже, вам не хватает схемы из некоторых ваших ссылок, например:
<a href="example.com/kontakt">Link Text</a>
При этом должно быть:
<a href="http://example.com/kontakt">Link Text</a>
Или относительный протокол:
<a href="//example.com/kontakt">Link Text</a>
См. также мой ответ на этот вопрос в стеке профессиональных веб-мастеров: https://webmasters.stackexchange.com/questions/86450/htaccess-rewrite-url-leads-to-missing-css
person
MrWhite
schedule
02.05.2017