- Настройка параметров PHP
- Настройка опций в файле .htaccess
- apc.cache_by_default
- default_charset
- display_errors
- log_errors
- magic_quotes_gpc
- mail.add_x_header
- max_input_vars
- mbstring.func_overload и mbstring.internal_encoding
- opcache.revalidate_freq
- pcre.recursion_limit
- post_max_size
- register_globals
- request_order
- upload_max_filesize
- Настройка опций в файле php.ini
- allow_url_fopen
- apc.cache_by_default
- default_charset
- display_errors
- magic_quotes_gpc
- mail.add_x_header
- max_input_vars
- mbstring.func_overload и mbstring.internal_encoding
- opcache.revalidate_freq
- pcre.recursion_limit
- post_max_size
- register_globals
- request_order
- upload_max_filesize
- Опции, которые не могут быть изменены
- Как настроить только php
- Изменение конфигурации PHP через реестр Windows
- Другие интерфейсы в PHP
- Настраиваем Apache, PHP и MySQL вручную
- Предупреждение
- Настройка MySQL
- Примечание
- Настройка Apache
- Ресурсы
- Настройка PHP
- Конфигурирование PHP
- Настройка Apache для работы с PHP
- Перезагрузка и тестирование PHP
- Установка и настройка XDebug
Настройка параметров PHP
- В первом случае PHP функционирует как модуль веб-сервера Apache, поэтому настройки PHP необходимо указывать в файле .htaccess.
- Во втором случае настройки PHP необходимо указывать в файле php.ini, который располагается в директории cgi-bin вашего сайта.
По умолчанию на новых серверах PHP работает в режиме mod_php, но при желании вы можете подключить режим mod_cgi, воспользовавшись нашей инструкцией.
Настройка опций в файле .htaccess
Директивы необходимо добавлять в самый конец или в самое начало файла, вне блоков кода . .
apc.cache_by_default
APC — акселератор PHP, использование которого увеличивает производительность интерпретатора за счет кэширования. В отдельных случаях, однако, может потребоваться его отключение — например, если скрипты не выполняются корректно из-за переполнения кэша.
Управление APC осуществляется директивами:
default_charset
Директива указывает кодировку по умолчанию (например, cp1251, utf-8, koi8-r) для всех выдаваемых страниц.
display_errors
Директива указывает, требуется ли выводить ошибки на экран вместе с остальным выводом, либо ошибки должны быть скрыты от пользователя.
Включение и выключение осуществляются следующим образом:
log_errors
Опция позволяет включить логирование ошибок php с их записью в произвольный файл (в примере errors.log). При указании пути к файлу замените u и user на первую букву вашего логина и сам логин.
magic_quotes_gpc
Волшебные кавычки (Magic Quotes) — это процесс автоматического экранирования входящих данных PHP-скрипта. Если опция включена, то одинарные (‘) и двойные («) кавычки и обратный слэш (\)экранируются обратным слэшем автоматически.
Включение и выключение magic_quotes осуществляется директивами:
mail.add_x_header
Опция позволяет включить логирование отправки почты из скриптов сайта. Логи будут содержать полный путь до скрипта, адрес получателя и заголовки. При указании пути к файлу, в который будут записываться логи (mail.log), замените u и user на первую букву вашего логина и сам логин.
max_input_vars
Директива указывает, сколько входных переменных может быть принято в одном запросе. Например:
mbstring.func_overload и mbstring.internal_encoding
Для корректной работы сайтов на старых версиях CMS Битрикс (до v20.100.0) требуются следующие параметры:
opcache.revalidate_freq
Отключение OpCache (настройка требуется для CMS Битрикс):
pcre.recursion_limit
Устанавливает лимит на рекурсию.
post_max_size
Опция устанавливает максимально допустимый размер данных, отправляемых методом POST. Также это значение также влияет на загрузку файлов — для загрузки больших файлов оно должно быть больше значения директивы upload_max_filesize.
register_globals
Директивы для включения/выключения глобальных переменных:
request_order
Директива регулирует порядок, в котором PHP добавляет переменные GET, POST и Cookie в массив _REQUEST.
upload_max_filesize
Устанавливает максимальный размер закачиваемого файла.
Настройка опций в файле php.ini
allow_url_fopen
Опция включает поддержку оберток URL (URL wrappers), которые позволяют работать с объектами URL по протоколам ftp или http как с обычными файлами.
Включение опции (для отключения значение = 0):
apc.cache_by_default
APC — акселератор PHP, использование которого увеличивает производительность интерпретатора за счет кэширования. В отдельных случаях, однако, может потребоваться его отключение — например, если скрипты не выполняются корректно из-за переполнения кэша.
Отключение APC (для включения значение = 1):
default_charset
Указание кодировки по умолчанию:
display_errors
Включение вывода ошибок (для выключения значение = off).
magic_quotes_gpc
Отключение Magic Quotes (для включения значение = 1):
mail.add_x_header
Включение логирования отправки почты из скриптов сайта. В директиве mail.log указывается путь к файлу, в который будут сохраняться логи (замените u и user на первую букву вашего логина и сам логин).
max_input_vars
Изменение количества вводимых переменных:
mbstring.func_overload и mbstring.internal_encoding
Настройки для старых версий CMS Битрикс:
opcache.revalidate_freq
Отключение OpCache (настройка для CMS Битрикс):
pcre.recursion_limit
Лимит на рекурсию:
post_max_size
Максимальный размер данных, отправляемых методом POST. Это значение также влияет на загрузку файлов — для загрузки больших файлов оно должно быть больше значения директивы upload_max_filesize.
register_globals
Отключение Register Globals (для включения значение = 1):
request_order
Регулирует порядок, в котором PHP добавляет переменные GET, POST и Cookie в массив _REQUEST.
upload_max_filesize
Устанавливает максимальный размер закачиваемого файла.
Опции, которые не могут быть изменены
К настройкам PHP, изменение которых невозможно в рамках виртуального хостинга, относятся:
Источник
Как настроить только php
Когда PHP используется как модуль Apache вы также можете менять настройки конфигурации, используя директивы в файлах конфигурации Apache (например, httpd.conf ) и файлах .htaccess . Для этого вам необходимы «AllowOverride Options» или «AllowOverride All» привилегии.
Есть несколько директив Apache, которые позволяют вам изменить конфигурацию PHP посредством файлов конфигурации Apache. С директивами PHP_INI_ALL , PHP_INI_PERDIR и PHP_INI_SYSTEM можно ознакомиться в приложении Список директив php.ini.
php_value name value
Устанавливает значение указанной директивы. Может использоваться только с директивами типа PHP_INI_ALL и PHP_INI_PERDIR . Для очистки предыдущих установленных значений используйте значение none .
Замечание: Не используйте php_value для установки логических значений. Вместо этого необходимо использовать php_flag (смотрите ниже).
Используется для установки директивам логических значений. Может быть использовано только с директивами типа PHP_INI_ALL и PHP_INI_PERDIR .
php_admin_value name value
Устанавливает значение указанной директивы. Не может быть использовано в файлах .htaccess . Директивы любого типа, установленные с помощью php_admin_value не могут быть переопределены через .htaccess или ini_set() . Чтобы очистить предыдущее значение используйте значение none .
php_admin_flag name on|off
Используется для установки директивам логических значений. Не может быть использовано в файлах .htaccess . Директивы любого типа, установленные с помощью php_admin_flag не могут быть переопределены через .htaccess или ini_set() .
Пример #1 Пример конфигурации Apache
PHP-константы недоступны вне PHP. К примеру, в httpd.conf вы не можете использовать константы PHP такие как E_ALL или E_NOTICE , чтобы установить директиву error_reporting, так как они не будут иметь значения и будут приравниваться к 0. Используйте вместо этого соответствующие значения типа bitmask (битовая маска). Эти константы могут быть использованы в php.ini
Изменение конфигурации PHP через реестр Windows
При использовании PHP в Windows значения конфигурации могут быть изменены на уровне директории посредством реестра Windows. Значения конфигурации хранятся в ключе реестра HKLM\SOFTWARE\PHP\Per Directory Values , в подключах, включающих полный путь. К примеру, значения конфигурации для директории c:\inetpub\wwwroot могут храниться в ключе HKLM\SOFTWARE\PHP\Per Directory Values\c\inetpub\wwwroot . Настройки для директории будут действительны для любых скриптов, запущенных из этой директории или её поддиректории. Значения ключа должны иметь название конфигурационной директивы PHP и строковое значение. PHP-константы в значениях игнорируются. Однако только значения конфигурации, изменяемые в PHP_INI_USER могут быть установлены таким образом, значения же PHP_INI_PERDIR не могут, потому что эти значения конфигурации перечитываются для каждого запроса.
Другие интерфейсы в PHP
Независимо от того, как вы запускаете PHP, вы можете изменять некоторые значения во время выполнения ваших скриптов c помощью ini_set() . Для более детальной информации смотрите документацию на странице функции ini_set() .
Если вам интересен полный список конфигурационных настроек вашей системы с текущими значениями, то вы можете запустить функцию phpinfo() и просмотреть результирующую страницу. Вы также можете получить доступ к значениям индивидуально сконфигурированных директив в процессе выполнения, используя ini_get() или get_cfg_var() .
Источник
Настраиваем Apache, PHP и MySQL вручную
В этой статье мы приведем краткий обзор этапов настройки Apache в среде Windows , а также ссылки на различные дополнительные ресурсы.
Предупреждение
Если на вашем компьютере уже установлен один из вариантов AMP :
- Впоследствии вам будет затруднительно вернуться к старой версии AMP . Потому что различные настройки, которые мы будем задавать, перепишут значения реестра и приведут к изменению среды в целом;
- Если вам нужно сохранить какие-либо конфигурации ( Apache , PHP , MySQL ) или данные, прежде чем выполнять шаги, описанные в этой инструкции, создайте все необходимые резервные копии.
Настройка MySQL
- Загрузите установочную программу MySQL , соответствующую вашей версии платформы;
- Запустите установочную программу и выберите вариант « Настроить »;
- Выполните все этапы установки и в конце нажмите кнопку « Готово »;
- После этого откроется окно « Мастер настройки сервера MySQL «:
- Убедитесь, что у вас выбран вариант « Стандартная конфигурация » и перейдите к следующему шагу;
- Если у вас уже установлен MySQL , вы можете получить сообщение « Служба Windows с именем MySQL уже существует. Пожалуйста, удалите эту службу корректно или выберите другое имя для новой службы «. В этом случае выберите другое имя для сервера MySQL ;
- В следующем окне установите флажок для опции « Включить директорию Bin в PATH Windows », чтобы вы могли получить доступ к различным утилитам MySQL из командной строки;
- В следующем окне установите пароль для пользователя root MySQL , который обладает наибольшим набором прав доступа к серверу;
- На следующем и последнем этапе вы должны сохранить все изменения. Для этого нажмите кнопку « Выполнить ». После этого служба будет запущена.
Примечание
Чтобы сделать эту инструкцию максимально доступной, мы пропустили несколько сценариев конфигурации сервера MySQL для Apache Windows 7 . Это и многое другое изложено здесь .
По умолчанию MySQL устанавливается с режимом STRICT , который может привести к возникновению некоторых ошибок при использовании расширений и приложений, не рассматриваемых в данной инструкции. Для получения дополнительной информации обратитесь к этому ресурсу.
Настройка Apache
- Загрузите инсталляционный пакет. На данный момент предпочтительно использовать версию 2.2;
- Запустите мастер установки и выполните все этапы, пока не дойдете до шага « Информация о сервере ». Здесь задайте для каждого из полей приведенные ниже значения, если у вас нет конкретных требований для настройки сервера Apache :
1. localhost
2. localhost
3. admin@localhost
- Завершите все этапы мастера установки, нажимая « Далее », после чего он установит и запустит веб-сервер Apache в качестве службы Windows ;
- Теперь в строке состояния Windows вы сможете увидеть перо розового цвета с зеленой кнопкой, указывающее на то, что Apache запущен и работает. Перейдя в браузере по адресу http://localhost/ , вы должны увидеть страницу, на которой указывается, что служба работает;
- Теперь давайте перейдем к директории, в которой установлен Apache. Как правило, это C:Program FilesApache Software FoundationApache2.2 — и рассмотрим различные папки, содержащиеся в ней:
- bin — содержит различные бинарные файлы, некоторые из них перечислены ниже. Чтобы получить доступ к этим приложениям, большинство из которых являются командами, нам нужно добавить путь к папке bin в глобальной переменной PATH . Для этого кликните правой кнопкой мыши по иконке Мой компьютер> Свойства> Дополнительные параметры системы> Переменные среды и в списке « Системные переменные » найдите и выберите переменную PATH , нажмите на кнопку « Редактировать » и добавьте в конце точку с запятой ( если она еще не добавлена ), а затем введите абсолютный путь к папке bin . И в диалоговом окне « Свойства системы » нажмите кнопку « Применить »:
- Файл httpd.exe — это веб-сервер Apache , который создал несколько дочерних процессов, обслуживающих целый ряд входящих запросов клиентов в соответствии с требованиями директивы MaxClients ;
- Файл ab.exe — это инструмент, который устанавливается вместе с Apache и позволяет увидеть, насколько производительно работает приложение за единицу времени.
- conf — папка, в которой находятся различные конфигурационные файлы. В нашем случае наибольший интерес представляют следующие:
- httpd.conf — большинство директив сервера находятся в этом файле и для легкого доступа к ним вы должны связать тип файла .conf с текстовым редактором « Блокнот »;
- extrahttpd-vhosts.conf — содержит директивы для использования локального сервера в качестве виртуального хоста, чтобы запускать на вашем компьютере несколько серверов. Один из сценариев его использования — на стадии разработки, если вы не хотите трогать фактический домен, вы можете работать на локальной копии, при этом допустимо возникновение в этом файле мелких ошибок;
- htdocs — корневой каталог веб-сервера по умолчанию, здесь отображается http://localhost/ , если вы не перенастроили его в файле httpd.conf ;
- logs — журналы доступа и ошибок, связанные с различными проблемами, возникающими при установке Apache на Windows 7 или даже в приложении.
Ресурсы
Настройка PHP
Скачайте PHP и выберите предпочтительную версию в формате Zip . Различные настраиваемые опции связаны с тем, как PHP-код базы компилируется в двоичный код, и вам ничего не нужно изменять.
Создайте в папке, где у вас устанавливаются программные файлы, директорию под названием PHP .
Найдите загруженный Zip-файл , переместите его во вновь созданную папку и распакуйте архив.
Теперь добавим путь к PHP к глобальной переменной PATH . Для этого следуйте инструкциям, приведенным выше.
Конфигурирование PHP
Конфигурирование PHP сводится к редактированию файла php.ini . Пример файла для различных сценариев уже находятся в вашей папке PHP . Переименуйте файл php.ini-development в php.ini и откройте его в текстовом редакторе. Доступные значения для различных параметров задокументированы в файле php.ini ( обратите внимание, что это общие настройки для сервера, применяемые для всех проектов ):
- max_execution_time — если у вас есть скрипты, которые выполняются слишком долго, и сервер возвращает различные неожиданные результаты, потому что не может выполнить весь процесс;
- memory_limit ;
- error_reporting ;
- display_errors ;
- log_errors — переменная, на которую нужно обращать внимание при сценариях разработки;
- upload_tmp_dir ;
- upload_max_filesize ;
- extension_dir — чтобы не усложнять все, мы укажем папку, в которой расположены следующие расширения, вынеся эту переменную из комментариев и задав для нее абсолютный путь к этой папке. Вся строка должна выглядеть следующим образом:
- Динамические расширения содержат дополнительные модули, которые можно загрузить вместе с PHP . В файле вы найдете закомментированные названия модулей, которые были добавлены в пакете с PHP ( директория ext ). Если вы хотите, активировать какой-либо из этих модулей, выведите из комментариев одно из следующих имен расширений:
- php_curl.dll ;
- php_gd2.dll ;
- php_mbstring.dll ;
- php_mysql.dll ;
- php_mysqli.dll ;
- php_pdo.dll ;
- php_pdo_mysql.dll ;
- php_xsl.dll ;
- session.save_path .
Настройка Apache для работы с PHP
Для настройки PHP в Apache откройте файл httpd.conf. и в разделе « Dynamic Shared Object (DSO) Support » добавьте следующие директивы ( если вы разместили папку PHP в другом месте, внесите соответствующие изменения для пути к файлу php5apache2_2.dll ):
Для DirectoryIndex добавьте index.php и index.htm в качестве возможных файлов, если запрашивается каталог. Это делается следующим образом:
В конце файла добавьте следующую строку, которая будет указывать, где размещается файл php.ini :
Перезагрузка и тестирование PHP
После внесения изменений в конфигурационные файлы вам необходимо перезапустить Apache , чтобы изменения вступили в действие. Поэтому давайте перезапустим Apache с помощью инструмента Apache Monitor , который можно найти в строке состояния Windows .
Теперь мы протестируем, как работает PHP . Перейдите в корневой каталог документов веб-сервера ( по умолчанию это C:Program FilesApache Software FoundationApache2.2htdocs ) и добавьте файл с именем phpinfo.php со следующим содержимым:
Таким образом, мы выведем страницу, содержащую информацию о настройках PHP , а также различных модулей, которые загружены в данный момент. Теперь в браузере перейдите по адресу http://localhost/phpinfo.php .
Установка и настройка XDebug
Пакет установки Apache Php MySQL в Windows 7 будет неполным без Xdebug . На этой странице вы сможете найти актуальную версию Xdebug .
Скопируйте всю страницу phpinfo , которую мы запустили ранее и вставьте ее в текстовое поле, после этого следуйте инструкциям по установке.
Источник