Ответ 1
Вы должны найти его в /private/etc, если он существует, в противном случае:
sudo cp /private/etc/php.ini.default /private/etc/php.ini
Я хотел запустить PHP прямо на моем Mac, без комментариев httpd.conf, активировать общий доступ к сети, установить MySQL и т.д. Я не могу найти свои файлы PHP, что наиболее важно, PHP.ini.
На моей старой машине он был расположен в /usr/local/php5/lib Но каталог php5 не существует в /usr/local..
Нужно ли мне получить пакет или я ищу в неправильном месте?
Запуск OS X 10.7.3, PHP 5.3.8, Apache/2.2.21
Благодарю.
Вы должны найти его в /private/etc, если он существует, в противном случае:
sudo cp /private/etc/php.ini.default /private/etc/php.ini
Чтобы найти INI файл на вашем компьютере, откройте Terminal.app
и выполните следующую команду:
php --ini
Если вам нужен шаблон для Lion, попробуйте это.
В терминале сделать php -i | grep php.ini
php -i | grep php.ini
. Должен дать вам несколько подсказок;)
Как уже указывалось, команда php --ini
сообщит вам, где PHP ожидает найти файл php.ini.
Для стандартной установки он, вероятно, будет искать /etc/php.ini
Если вы использовали macports, тогда PHP может искать /opt/local/etc/php5/php.ini
Запустите phpinfo()
из любого файла, и он скажет вам, где он находится. Вот скриншот.
Ответы @Cronk и @Justin помогли мне познакомиться с Mac OS X 10.9 Mavericks. Фактически, в моей системе файл /etc/php.ini
отсутствовал полностью, и только когда я запустил phpinfo()
на веб-сервере, я заметил, что не было никакого файла конфигурации. Копирование файла из /etc/php.ini.default
и добавление полного пути к библиотеке mcrypt.so
в файл конфигурации решило проблему:
cp /etc/php.ini.default /etc/php.ini
Затем в /etc/php.ini
добавьте следующую строку (используя правильный путь к файлу mcrypt.so
):
extension="/usr/local/Cellar/php54-mcrypt/5.4.29/mcrypt.so"
Затем перезапустите Apache2:
apachectl restart
У меня уже не один экземпляр PHP работает, поэтому другие ответы у меня не сработали. Это сделал:
Создайте файл PHP и откройте его локальный URL в вашем браузере:
<?php phpinfo(); ?>
Путь PHP.INI будет указан близко к началу.
Это довольно старая ветка, но я хотел бы добавить дополнительные пояснения.
Если у вас есть система с несколькими установками PHP (как у меня), результаты, которые вы получите от использования инструментов командной строки, МОГУТ БЫТЬ отличны от тех, которые фактически используются веб-сервером. Если вас интересует, какой PHP используется веб-сервером, используйте только информацию, собранную с веб-страницы, которая использует функцию phpinfo().
Например, в моей системе версии, представленные двумя разными методами, были следующими:
Command line: 5.3.26
Web: 5.3.13
Для пути к файлу php.ini все было иначе:
Command line: /private/etc/php.ini
Web: /long/path/to/the/file/php.ini
Вы можете найти все возможные файлы php.ini, используя это:
find / -name php.ini 2>&1 | grep -v "denied" | grep -v "directory"
(элементы '2> & 1' и 'grep' ограничивают вывод команды полезной информацией, то есть избавляются от сообщений об ошибках)
В моей системе я нашел 3 файла INI. Поскольку меня интересовало, что использует веб-сервер, я знал, что должен использовать путь, полученный из результатов веб-страницы. Я внес свои изменения в файл php.ini, который там был указан, перезапустил apache и заново запустил веб-страницу; новые правки были показаны там.
Чтобы перезапустить Apache:
sudo apachectl -k restart
- J
Я начинаю с "Hello World!", Как только я вижу это в своем браузере, я phpinfo();
там, и вы можете увидеть все вещи. Сообщает вам, какие конфигурации загружены, все.
<?php
echo 'Hello World!';
phpinfo();
Вы запускаете php_info() и видите строку ниже :)
Loaded Configuration File /Applications/XAMPP/xamppfiles/etc/php.ini