У меня есть файл shtml index.shtml, в который я хочу включить PHP-файл, который выполняет некоторую программу и возвращает данные HTML. Я пытаюсь включить свой файл PHP, но я не знаю, как это сделать, я пробовал следовать, но ничего не работает,
Следующая строка просто печатает ошибку, « [произошла ошибка при обработке этой директивы] »:
<!--#include file="/SSI/test.php"-->
В этой строке отображаются некоторые нежелательные символы:
<!--#include virtual="/SSI/test.php"-->
Эта строка ничего не делает и отображает команду как есть на странице .shtml
<?PHP include("/SSI/test.php"); ?>
в<?PHP include("/SSI/test.php"); ?>
благодаря
Если нет конкретной причины, по которой вы используете .shtml, помимо того, что вы упомянули в отношении трафика, вы можете изменить его обработку в файле .htaccess:
<Files *.shtml> ForceType application/x-httpd-php </Files>
Или вы можете указать этот файл в частности:
<Files filename.shtml> ForceType application/x-httpd-php </Files>
Это скажет серверу проанализировать .shtml, как это было .php-файл, и поэтому любые команды PHP должны обрабатываться, например, ваш оператор include. Нет необходимости изменять расширение файла.
Я мог ошибаться, но, учитывая полученную вами ошибку, проблема может отсутствовать в инструкции include, но в файл php будет включена ошибка, которая вызывает проблему.
Я не думаю, что вы можете в Apache (я понятия не имею о других веб-серверах). В документации Apache говорится, что «include_virtual» позволяет включать результаты программы CGI; но PHP не является CGI-приложением в терминах Apache: он обрабатывается другим модулем по-другому.
Colin
Для того, чтобы последнее работало, просто переименуйте свой .shtml в .php, но обратите внимание, что это остановит любой shtml от работы. Но это не должно быть проблемой, если вы также переписываете это на php.
Изменить комментарий:
Если вы запустите apache, вы можете добавить следующее в свои .htacces, а затем вы можете переименовать файл в .php
redirect permanent filename.shtml filename.php
Это приведет к перенаправлению людей, которые посещают example.com/filename.shtml, на example.com/filename.php