Перед использованием переписать URL каждый это правильно отображается
но когда я использовал переписать URL
http://localhost/mgosoft/admin/userreg/
пожалуйста, помогите мне с этим, спасибо 🙂
Поскольку вы используете PHP просто используйте $site_addr = $_SERVER['HTTP_HOST'];
и добавьте это, прежде чем все ваши ссылки, как->
<link rel="stylesheet" type="text/css" href="<?php echo $site_addr; ?>css/style.css">
Надеюсь, это поможет
@ O-mkar прибил это в значительной степени. Еще одна вещь, которую вы можете сделать — если вы не хотите изменять все ссылки в рамках всего вашего проекта: переписать их на правильный URL-адрес автоматически, используя другую строку htaccess (для /css/
каталог) ::
RewriteCond %{REQUEST_URI} !^/css/ [NC]
RewriteRule ^.*/css/([^/]+)$ /css/$1 [L, R=301]
Это перепишет любой неправильный URL, как http://localhost/mode/movies/view/profile/css/style.css
к фиксированному пути ресурса http://localhost/css/style.css
ОФК. localhost
должен соответствовать правильному внешнему имени хоста.
в зависимости от того, насколько универсален ваш исходный процесс переписывания, вы должны исключить повторное переписывание путей к ресурсам, иначе вы получите бесконечный цикл перезаписи:
RewriteCond %{REQUEST_URI} !^/css/ [NC]
RewriteCond %{REQUEST_URI} !^/images/ [NC]
RewriteCond %{REQUEST_URI} !^/javascript/ [NC]
так далее…
На ваш пример и файл ресурсов assets/css/themes/simple/style.css
Вам в основном нужно сказать: Перепишите все, что ENDS с этой строкой, в корневую папку.
Таким образом, это будет:
RewriteCond %{REQUEST_URI} !^/assets/css/themes/simple/ [NC] #skip, if already rewritten
RewriteRule ^.*/assets/css/themes/simple/([^/]+)$ /assets/css/themes/simple/$1 [L, R=301]
Вы можете использовать эту красивую страницу, чтобы поиграть: http://htaccess.madewithlove.be/
положить в приведенном выше примере и URL-адрес запроса http://localhost/mode/movies/assets/css/themes/simple/style.css
чтобы увидеть, это станет http://localhost/assets/css/themes/simple/style.css
ОФК. Вы можете играть в Arround и перенаправить КАЖДЫЙ подфайл из /assets/
тогда вам не нужно создавать правила для каждого файла.
пс .: Если вы используете [L, R=301]
для перенаправления ресурсов также будет работать кеш браузера, потому что он запомнит постоянное перемещение запрошенного файла. — без R = 301 все время будут думать, что это разные файлы.
Вы также можете попробовать это
Для вашей локальной версии добавьте
<base href="//localhost/mywebsite" />
в головной раздел
и для ваших живых версий измените его на
<base href="//your.domain.here" />
ссылка на http://www.w3.org/TR/html4/struct/links.html#h-12.4