Сделать папку домена действовать как root - PullRequest
0 голосов
/ 12 октября 2018

У меня есть домен, например https://test.com этот домен содержит полный проект в https://test.com/system.

Проблема:

Всякий раз, когдаЯ пишу <link ref="stylesheets" href="/style/main.css"> Поиск в корне домена, а не в каталоге system , в котором находится проект.

Что я пытался сделать:

Я пытался отредактировать весь свой путь, чтобы он равнялся href="style/main.css" вместо href="/style/main.css".

Это решение работает, но я не буду делать это каждый раз, когда перехожу в рабочий режим.

Что я пытаюсь сделать:

Я знаю, что есть решение, использующее .htaccess, но я не знаю, как его написать ..

1 Ответ

0 голосов
/ 12 октября 2018

Попробуйте

<link ref="stylesheets" href="./system/style/main.css">

или

<link ref="stylesheets" href="../system/style/main.css">.

Если это по-прежнему не работает, используйте три точки.

<link ref="stylesheets" href=".../system/style/main.css">.

Это сработало для меня.


Чтобы установить подкаталог как root с помощью .htaccess

Это будет зависеть от того, что для некоторых услуг хостинга вам нужно добавить только эту строку:

RewriteBase /system

Если это не работает для вас, попробуйте следующее:

RewriteEngine On
# Map http://www.example.com to /system.
RewriteRule ^$ /system/ [L]
# Map http://www.example.com/x to /system/x unless there is a x in the web root.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/system/
RewriteRule ^(.*)$ /system/$1
# Add trailing slash to directories within system
# This does not expose the internal URL.
RewriteCond %{SCRIPT_FILENAME} -d
RewriteRule ^system/(.*[^/])$ http://www.example.com/$1/ [R=301]
...