Доступ к файлу .htaccess - PullRequest
       1

Доступ к файлу .htaccess

4 голосов
/ 21 февраля 2012

У меня есть вопрос, касающийся доступа к файлам .htaccess для CSS-файлов и JS-файлов.

У меня есть это:

RewriteEngine On
RewriteBase /
RewriteRule ^$ index.php?page=index [L,NC]
RewriteRule ^([a-z0-9]+)/?$ index.php?page=$1 [L,NC]
RewriteRule ^([a-z0-9]+)/([a-z0-9]+)/?$ index.php?page=$1&subpage=$2 [L,NC]

. Теперь я понимаю, что некоторые файлы (например, JS, CSS) загружаются.правильно, без использования:

RewriteCond %{REQUEST_URI} !-f

будет лучше, если я добавлю его перед моими правилами, или это не имеет значения?

Ответы [ 2 ]

5 голосов
/ 21 февраля 2012

Обычно безопасно включить RewriteCond %{REQUEST_URI} !-f в правила перезаписи, чтобы эти правила не влияли на физические файлы, такие как css, js, images и т. Д.

Однако в вашем случае ни одно из ваших правил не повлияет на эти файлы css, js, images , потому что вы не включаете символ точки . в соответствующее совпадение регулярного выражения.

Чтобы преодолеть вашу проблему, я рекомендую использовать абсолютный путь в ваших файлах css, js, images вместо относительного.Это означает, что вы должны убедиться, что путь к этим файлам начинается с http:// или с косой черты /.

0 голосов
/ 21 февраля 2012

js, css файлы будут кэшироваться вашим браузером. Но в вашем случае, по пути, указанному в комментариях и переписанных выше. это не повлияет. Но любые правила переписывания в будущем могут повлиять на них. Так что лучше добавить RewriteCond %{REQUEST_FILENAME} !-f.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...