Почему PHP не предоставляет ресурсы веб-сайта клиентам?

Доброго времени суток!

При работе веб-приложения через PHP оказалось, что вместо любых ресурсов PHP отправляет HTML разметку index.php. Из-за этого клиенты не получают ни каскадных таблиц стилей, ни изображений.

Вопрос: Как мне заставить PHP отправлять клиентам ресурсы (изображения, каскадные таблицы стилей и так далее)?

Пример

index.php

<!DOCTYPE html>
<html>
    <head></head>
    <body>
        <img src="edit.png">Nope! Again>:!</img>
        <? echo '<img src="edit.png">Nope! Again>:!</img>'; ?>
    </body>
</html>

edit.png

Изображение edit.png находится везде. И в корневой папке веб-приложения, и во всех его подпапках, и во всех подпапках самого PHP. Ошибок с путями быть не может и не нужно об этом писать.

Результат

Browser network tracking

  1. Клиент переходит на веб-сайт.
  2. Веб-обозреватель получает HTML разметку веб-сайта.
  3. В разметке веб-обозреватель видит дополнительный ресурс - изображение edit.png.
  4. Веб-обозреватель запрашивает дополнительный ресурс, указывая, что в ответ он ожидает изображение.
  5. PHP отправляет не запрашиваемое изображение, а HTML разметку index.php.

Последний пункт я проверил при помощи команды curl.exe http://localhost:22833/edit.png -o response.

PHP

Я уверен, что PHP (при помощи параметра -t) запускается именно из корневой папки веб-приложения.

Результат идентичен на версиях ts 8.0.11 и ts 7.2.24.

Примечание: На другом компьютере у меня есть полная копия моей версии ts 7.2.24. С ней у меня не возникало подобных проблем. Впрочем, проверить приведенный пример на нем я сейчас не могу.


Ответы (0 шт):