Ссылки на файлы внутри PHP / HTML-кода, тоже подлежащие .htaccess mod_rewrite - PullRequest
0 голосов
/ 14 февраля 2010

Просто хотел убедиться:

Когда я пишу:

require('/path/to/file/file.php');

Требуется ли файл для mod_rewrite Apache? (что кажется необоснованным, поскольку оно должно быть там для перенаправления URL пользователя) Я имею в виду, что если .htaccess отправляет все запросы в «index.php», вместо этого потребуется index.php?

И

В разметке HTML должны указываться пути к файлам, например. Изображения, ссылки, CSS должны быть написаны в отношении .htaccess mod_rewrite?

Скажите, что это публичный корень: http://example.com/ Изображение находится в '/img/image.png' RewriteRule отправляет все запросы с чем-либо после косой черты конца URL на http://example.com/ Значит ли это, что изображение не будет найдено?

Полагаю, это относится и к файлам JS / CSS.

Ответы [ 2 ]

0 голосов
/ 14 февраля 2010

Первые вопросы: Нет, mod_rewrite не влияет на путь, указанный в require().
Второй вопрос: да, это не будет найдено. Но вы можете поставить условие перезаписи перед правилом перезаписи, чтобы обойти это:

RewriteCond %{REQUEST_FILENAME} !-f

При этом правило перезаписи применяется, только если запрошенный файл не существует.

0 голосов
/ 14 февраля 2010

Требуется ли файл для mod_rewrite apache?

Нет. Никогда. За исключением случаев, когда вы начинаете путь с http://, в этом случае HTTP-оболочка вступит в игру и сделает обычный веб-запрос.

В разметке HTML должны указываться пути к файлам, например Изображения, ссылки, CSS должны быть написаны в отношении htaccess mod_rewrite?

Абсолютно. Я не понимаю ваш пример, но любой URL, который вы используете в HTML-файле, будет запрашиваться браузером клиента и подчиняться любым установленным вами правилам mod_rewrite. То же самое касается Javascript, CSS-файлов и т. П.

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