В обычных обстоятельствах страница phpinfo() может отображаться. Начнем с проблем, которые возникают после возможности отображения этой страницы.
Проблемы PHP будут отображаться на странице phpinfo().
Сначала проверьте, правильный ли путь к вашему php.ini.
Вопрос: Я настроил php.ini. файл, но после перезагрузки сервера Почему ничего не работает?
Ответ: Эта проблема в основном связана со следующими ситуациями.
Первая причина заключается в том, что файл php.ini, читаемый системой, не соответствует файлу php.ini, который вы изменили в тот момент. 1. Вы можете проверить текущее чтение PHP-сервера с помощью параметра «Путь к файлу конфигурации (php.ini)». phpinfo() Что такое php.ini
2. Если вы хотите изменить местоположение доступа к файлу php.ini, вы можете обратиться к порядку поиска php.ini, как показано ниже:
a) Местоположение, указанное модулем SAPI (директива PHPIniDir в Apache 2, опция командной строки -c в CGI и CLI, параметр php_ini в NSAPI, переменная среды PHP_INI_PATH в THTTPD)
б) HKEY_LOCAL_MACHINESOFTWAREPHPIniFilePath (расположение реестра Windows)
в) Переменная среды PHPRC. г) Текущий рабочий каталог (для CLI).
д) Каталог веб-сервера (для модуля SAPI) или каталог, в котором находится PHP (в других случаях под Windows).
f) Каталог Windows (C:windows или C:winnt) или местоположение, указанное параметром времени компиляции --with-config-file-path 3. Общий подход: установив переменную среды PHPRC,
а) Операция: щелкните правой кнопкой мыши «Мой компьютер» -> «Свойства» -> «Дополнительно» -> «Переменные среды». б) Создайте новую переменную среды в системных переменных, указав «имя переменной — PHPRC, а значение переменной — путь к вашему файлу php.ini».
причина
: PHP не нашел соответствующую библиотеку расширений. 1. Проверьте расположение библиотеки расширений, найденной PHP: вы можете увидеть ее в опции Extension_dir функции phpinfo(). 2. Измените файл Extension_dir в php.ini
. третья причина: нет полного перезапуска IIS
1. Чтобы изменения в php.ini вступили в силу, необходимо полностью перезапустить их, а не только текущий сайт.
2. Введите cmd, остановите сервер: net stop iisadmin запустите сервер: net start w3svc;
Вопрос: Почему я не могу активировать библиотеку расширений MySql в своем PHP?
О: В PHP5.0 и выше MySQL не включен по умолчанию, поэтому нам нужно активировать его вручную.
1. Чтобы запустить MySql в PHP, необходимо активировать библиотеку динамических ссылок php_mysql.dll в php.ini. Кроме того, вам необходимо получить доступ к библиотеке клиентских ссылок MySQL, то есть к файлу libmysql.dll. 2. Вы можете активировать. библиотеку динамической компоновки php_mysql.dll через расширение в php.ini. Файл libmysql.dll должен быть помещен в системный путь Windows для доступа к нему. Вы можете скопировать libmysql.dll в каталог system32 или добавить его. новый путь к переменной среды PATH.
3. Рекомендуемый подход: установите PATH для облегчения будущих обновлений PHP. Просто добавьте папку, в которой находится «libmysql.dll», после PATH в переменную системной среды. Не забудьте разделить их знаком «;». 4. [Случай] Недавно сервер не смог найти библиотеку расширений MySql, из-за чего программа не запустилась. Поэтому удалите все файлы и перенастройте PHP-сервер. Но в итоге, когда я установил MySql, я не смог активировать библиотеку расширений MySql.
Информация, найденная в phpinfo(), выглядит следующим образом:
ПУТЬ:c:php
PHPRC:C:php
каталог_расширения:c:phpext
Кроме того, я тестировал активацию других библиотек, таких как msql, gd2, xml, и они могут нормально отображаться в phpinfo(), доказывая, что PHP может найти библиотеку динамической компоновки php_mysql.dll, а еще одним условием работы MySql является чтобы иметь возможность запрашивать клиент MySQL. Библиотека подключения терминала - это файл libmysql.dll. Кажется, проблема заключается здесь.
Я искал файл libmysql.dll на диске C и обнаружил, что в папках system32 и php есть файл. После создания резервной копии я попытался удалить файл libmysql.dll в system32 и обнаружил, что он заблокирован и может. не быть удален, но его можно переименовать. Я случайно изменил имя и перезапустил IIS, и сервер заработал нормально.
Еще один момент: если путь к файлу конфигурации (php.ini) отображается как C:Windows
, это означает, что файл php.ini не был прочитан.
Кроме того, я обнаружил, что при использовании IIS для интеграции php есть два способа: режим ISAPI и CGI.
В обоих случаях мы можем видеть страницу phpinfo,
но при использовании режима ISAPI переменные среды не могут быть прочитаны, поэтому переменная среды PHPRC. Путь к php.ini не найден.
Просто используйте CGI, чтобы вам не приходилось копировать много файлов в системный файл.