Проблема PHP content-type=text/html
Автор:Eve Cole
Время обновления:2009-06-02 18:06:56
Следующий текст написан потому, что в последнее время я увидел много таких вопросов на форуме. Дайте пожалуйста совет! ! ! В FAQ этого сайта уже есть ответы о том, как удалить некоторую лишнюю информацию PHP4, но, строго говоря, эта информация разделена на две части: одна часть — это сообщение о том, что PHP запущен, то есть те X-POWERED- BY и тому подобное. Другая часть объявляет формат содержимого файла text/HTML по умолчанию. Ответы в FAQ решают первую часть проблемы (при условии, что вы добавите комментарий в соответствующей строке), но форум больше посвящен второй части, и мне бы хотелось обсудить этот вопрос. Первое, что следует отметить, это то, что такая ситуация может возникнуть, когда PHP работает в режиме CGI, поэтому я предполагаю, что это в основном ошибка на платформе WIN32. Прежде всего, одно из самых крайних решений — закомментировать все модули расширения, то есть объявить в PHP.ini, что те модули расширения, которые относятся к базам данных, графике, ПОЧТЕ и т. д., не должны загружаться. Некоторые PHP.ini. файлы имеют следующий вид:
;Расширения Windows
;расширение=PHP_mysql.dll
;расширение=PHP_nsmail.dll
;extension=PHP_calendar.dll
;расширение=PHP_dbase.dll
;расширение=PHP_filepro.dll
;расширение=PHP_gd.dll
;расширение=PHP_dbm.dll
;расширение=PHP_mssql.dll
;расширение=PHP_zlib.dll
;расширение=PHP_filepro.dll
;расширение=PHP_imap4r2.dll
;расширение=PHP_ldap.dll
;расширение=PHP_crypt.dll
;расширение=PHP_msql2.dll
;расширение=PHP_odbc.dll
А что, если эти модули необходимы? Брат, мое решение — динамически загружать соответствующую страницу, то есть dl() — раньше мне было интересно, в чем польза этой функции, но теперь, ха-ха. . . Если у вас есть хорошие идеи, вы можете опубликовать их и поделиться со всеми! Второе решение — использовать параметр PHP -q. Согласно самому PHP, это «Подавить вывод заголовка HTTP», что означает, что вывод заголовка HTTP запрещен. Это решит проблему раз и навсегда, но любые ваши header() и setcookie() будут бесполезны - хе-хе, ваш PHP по сути будет утилизирован. Так что это просто грязный подход. Хорошо, вот и все, он должен решить вышеуказанные проблемы, связанные с работой PHP в режиме CGI. Вышеприведенная информация объединена с разделом PHP на сайте www.faqts.com — это лучший форум, где можно задать вопросы. Авторы PHP/ZEND и авторы некоторых книг по PHP часто отвечают на ваши вопросы. Как здорово! ! ! Ваш совет приветствуется!