У меня есть сценарий CGI на сервере с именем script.cgi, и я добавил следующий код в домен vhost:
Action add-footer /cgi-bin/script.cgi
AddHandler add-footer .htm .html
Я изменил его на:
Action add-footer /cgi-bin/script.cgi
AddHandler add-footer .htm .html .php
Если страница является HTML, код будет запущен, но если страница является PHP, код не запустится. Есть ли какой-нибудь код, который мне нужно добавить к vhost, чтобы файлы PHP могли запускать этот скрипт?
**** РЕДАКТИРОВАТЬ: ****
Я хочу «внедрить» HTML-код на каждую возможную страницу сервера, включая файлы HTML и PHP.
Код работает только с html-файлами, и я не знаю почему.
Извините, но я не понимаю, что CGI - это не PHP, это Perl, и для этого требуется поддержка Perl / CGI, а не PHP. Скрипты PHP имеют расширения .php, а не .cgi / .fcgi.
Может я что-то здесь упустил. Не могли бы вы еще прояснить вопрос. Нравится какой веб-сервер вы используете? Этот код PHP встроен в скрипт .cgi или?
***** РЕДАКТИРОВАТЬ *****
Так что вы можете рассматривать CGI как интерфейс, в вашем случае интерфейс, использующий Perl. Вы не можете смешивать PHP в среде CGI, но вы можете изменить сценарий .cgi для выполнения внешнего вызова сценария .php.
Это можно сделать несколькими способами:
HTML "работает" нормально, потому что HTML интерпретируется браузером, а PHP является серверным языком, который должен выполняться в соответствующей среде.
Предлагаю продолжить чтение о том, как Perl выполняет внешние скрипты: