- Php: описание встроенных директив php.ini — manual
- Php: list of php.ini directives — manual
- Php: установка — manual
- Why is my php.ini not found?
- Где находится php.ini?
- Как изменить значение опций, имеющих статус изменяемости php_ini_perdir или php_ini_all
- Как настроить php.ini под свои потребности?
- Собственный php.ini на хостинге с панелью управления cpanel | заметки лёвика
- Вывод ошибок в php
Php: описание встроенных директив php.ini — manual
Краткое разъяснение конфигурационных
директив.
include_path
string Указывает список директорий, в которых функции
require, include,
fopen(), file(),
readfile() и file_get_contents()
ищут файлы. Формат соответствует формату системной переменной окружения
PATH: список директорий,
разделённых двоеточием в Unix или точкой с запятой в Windows.
При поиске подключаемых файлов PHP отдельно рассматривает каждое
значение в include_path.
Он проверяет первый путь, если файл в нем не найден, то он переходит
к следующему, и так до тех пор, пока не найдёт подключаемый файл, либо
вернёт
E_WARNING
или E_ERROR
.
Вы можете изменить ваш include_path во время выполнения скрипта с
помощью функции
set_include_path().
Использование .
в include_path позволяет
задавать относительные пути для подключения файлов, так как
точка означает текущую директорию. Однако, более эффективно
использовать include './file'
, чем заставлять
PHP каждый раз проверять текущую директорию при подключении каждого файла.
Замечание:
Переменные окружения (ENV
) также доступны в .ini файлах.
Таким образом, можно ссылаться на домашнюю директорию с помощью директив
${LOGIN}
и ${USER}
.
Переменные окружения могут отличаться между различными серверными API,
так как сами эти окружения отличаются друг от друга.
open_basedir
string Ограничивает указанным деревом каталогов файлы, которые могут быть доступны для
PHP, включая сам файл. Эта директива НЕ подвержена влиянию
безопасного режима.
Когда скрипт пытается получить доступ к файлу, например, с помощью функции
fopen() или gzopen(),
проверяется местонахождение файла. Если файл находится вне указанного
дерева каталогов, PHP откажется его открывать. Все символические
ссылки будут раскрыты, так что с их помощью не удастся обойти это
ограничение. Если файл не существует, то символическая ссылка не сможет
быть прочитана и имя файла (прочитанное) будет рассматриваться
open_basedir.
Опция open_basedir может распространяться не только на функции для
работы с файловой системой; например, если MySQL
настроен
использовать драйвер mysqlnd
, то LOAD DATA INFILE
подпадает под опцию open_basedir.
Множество функций PHP также использует open_basedir
.
Специальное значение .
обозначает, что рабочая директория скрипта будет использована в качестве
базовой директории. Однако, это немного опасно, так как текущая директория
скрипта может быть легко изменена с помощью chdir().
В httpd.conf, open_basedir может быть
выключена (например, для некоторых виртуальных хостов)
тем же способом, что и любая
другая конфигурационная директива: «php_admin_value open_basedir
«.
none
В Windows разделяйте директории точкой с запятой. На всех остальных системах,
разделяйте директории двоеточием. При работе в качестве модуля Apache, пути
open_basedir автоматически наследуются от родительских директорий.
Ограничение, определяемое open_basedir является
именем директории, а не префиксом.
По умолчанию все файлы могут быть открыты.
Замечание:
Значение open_basedir можно сделать
более строгим во время выполнения скрипта. Это означает, что если
open_basedir была установлена в /www/
в php.ini,
то скрипт может ужать конфигурацию до
/www/tmp/
во время выполнения с помощью
ini_set(). При указании нескольких директорий
можно использовать константу PATH_SEPARATOR
в качестве разделителя путей, не зависящего от операционной системы.
Замечание:
Использование опции open_basedir установит realpath_cache_size
на значение 0
и таким образом отключит кеш realpath.
doc_root
string «Корневая директория» PHP на этом сервере. Используется только в
случае, если не пустая.
Если PHP не был скомпилирован с FORCE_REDIRECT, вам следует
установить doc_root, если вы используете PHP в качестве
CGI под любым веб-сервером (кроме IIS). Альтернативой является
использование конфигурационной директивы
cgi.force_redirect,
речь о которой идёт ниже.
user_ini.cache_ttl
intuser_ini.filename
stringuser_dir
string Базовое имя директории, используемой в домашнем каталоге пользователя
для PHP файлов, например, public_html.
extension_dir
string В какой директории PHP должен искать динамически загружаемые модули.
Рекомендуется указывать абсолютный путь. Смотрите
также: enable_dl и dl().
extension
stringКакие динамически загружаемые модули должны быть загружены при старте PHP.
zend_extension
string Имя динамически загружаемого модуля Zend (например,
XDebug), который должен быть загружен при старте PHP.
cgi.check_shebang_line
bool Контролирует, нужно ли проверять первую строку CGI
PHP-скрипта на содержание #!
(shebang).
Эта строка может быть необходима, если скрипт должен поддерживать как отдельный
запуск, так и с помощью PHP CGI. PHP в режиме
CGI пропускает эту строку и игнорирует её
содержимое, если данная директива включена.
cgi.discard_path
bool Если разрешено, бинарный файл PHP CGI может безопасно располагаться вне веб-дерева
и люди не смогут обойти безопасность .htaccess.
cgi.fix_pathinfo
bool Обеспечивает поддержку правильныхPATH_INFO
/PATH_TRANSLATED
в CGI. Раньше PHP просто устанавливал
PATH_TRANSLATED
в SCRIPT_FILENAME
и не обращал внимания на PATH_INFO
.
Для получения дополнительной информации о PATH_INFO
,
обратитесь к спецификации CGI. Установка этого
значения в 1
заставит PHP CGI
исправлять свой путь в соответствии со спецификацией. Значение 0
соответствует предыдущему поведению. По умолчанию опция включена.
Вы должны исправить свои скрипты так, чтобы они использовали
SCRIPT_FILENAME
вместо PATH_TRANSLATED
.
cgi.force_redirect
bool Директива cgi.force_redirect необходима для обеспечения безопасности
во время работы PHP в качестве CGI под большинством
веб-серверов. Если оставить её неопределённой, по умолчанию PHP включает эту
директиву. Вы можете выключить её на свой страх и
риск.
Замечание:
Пользователям Windows: При использовании IIS эта опция
должна быть отключена. Тоже самое необходимо
для OmniHTTPD и Xitami.
cgi.nph
boolЕсли cgi.nph разрешена, cgi будет принудительно возвращать код 200 на каждый запрос.
cgi.redirect_status_env
string Если cgi.force_redirect включена и вы работаете не под веб-сервером
Apache или Netscape (iPlanet), вам может
понадобиться установить переменную окружения, которую будет искать
PHP чтобы убедиться, что он может продолжать выполнение.
Замечание:
Установка этой переменной может повлечь за собой проблемы с
безопасностью, так что вы должны знать, что вы делаете.
Сообщает PHP, какой тип заголовков использовать при отправке
кода ответа HTTP. Если установлено в 0, PHP отправляет
» RFC 3875 заголовок
«Status:», который поддерживается Apache и другими веб-серверами.
Если установлено в 1, PHP отправляет заголовки, соответствующие
» RFC 2616.
Если эта опция включена и вы используете PHP в окружении CGI (например,
PHP-FPM), то вместо использования HTTP-заголовков ответа в стиле
RFC 2616, нужно использовать их эквивалент из стандарта RFC 3875, например,
вместо header(«HTTP/1.0 404 Not found»); нужно использовать
header(«Status: 404 Not Found»);
Оставьте в значении 0, если вы не уверены в том, что это значит.
fastcgi.impersonate
string FastCGI под IIS (в ОС на базе WINNT) поддерживает возможность имперсонации прав
безопасности вызывающего клиента. Это позволяет IIS определить контекст безопасности,
в котором выполняется запрос. mod_fastcgi под Apache на текущий момент не
поддерживает эту возможность (03/17/2002).
Установите в 1 при работе под IIS. Значение по умолчанию — ноль.
fastcgi.logging
bool Включает логирование SAPI при использовании FastCGI. Логирование
включено по умолчанию.
Php: list of php.ini directives — manual
This list includes the php.ini directives you can set to configure your
PHP setup.
The «Changeable» column shows the modes determining when and where a directive may be set.
See the Changeable mode values section for their definitions.
Name | Default | Changeable | Changelog |
---|---|---|---|
allow_url_fopen | «1» | PHP_INI_SYSTEM | |
allow_url_include | «0» | PHP_INI_SYSTEM | Deprecated as of PHP 7.4.0. |
arg_separator.input | «&» | PHP_INI_PERDIR | |
arg_separator.output | «&» | PHP_INI_ALL | |
assert.active | «1» | PHP_INI_ALL | |
assert.bail | «0» | PHP_INI_ALL | |
assert.callback | NULL | PHP_INI_ALL | |
assert.exception | «0» | PHP_INI_ALL | |
assert.quiet_eval | «0» | PHP_INI_ALL | Removed as of PHP 8.0.0 |
assert.warning | «1» | PHP_INI_ALL | |
auto_append_file | NULL | PHP_INI_PERDIR | |
auto_detect_line_endings | «0» | PHP_INI_ALL | |
auto_globals_jit | «1» | PHP_INI_PERDIR | |
auto_prepend_file | NULL | PHP_INI_PERDIR | |
bcmath.scale | «0» | PHP_INI_ALL | |
browscap | NULL | PHP_INI_SYSTEM | |
cgi.check_shebang_line | «1» | PHP_INI_SYSTEM | |
cgi.discard_path | «0» | PHP_INI_SYSTEM | |
cgi.fix_pathinfo | «1» | PHP_INI_SYSTEM | |
cgi.force_redirect | «1» | PHP_INI_SYSTEM | |
cgi.nph | «0» | PHP_INI_ALL | |
cgi.redirect_status_env | NULL | PHP_INI_SYSTEM | |
cgi.rfc2616_headers | «0» | PHP_INI_ALL | |
child_terminate | «0» | PHP_INI_ALL | |
cli.pager | «» | PHP_INI_ALL | |
cli.prompt | «\b \> « | PHP_INI_ALL | |
cli_server.color | «0» | PHP_INI_ALL | |
com.allow_dcom | «0» | PHP_INI_SYSTEM | |
com.autoregister_typelib | «0» | PHP_INI_ALL | |
com.autoregister_verbose | «0» | PHP_INI_ALL | |
com.autoregister_casesensitive | «1» | PHP_INI_ALL | |
com.code_page | «» | PHP_INI_ALL | |
com.dotnet_version | «» | PHP_INI_SYSTEM | As of PHP 8.0.0 |
com.typelib_file | «» | PHP_INI_SYSTEM | |
curl.cainfo | NULL | PHP_INI_SYSTEM | |
date.default_latitude | «31.7667» | PHP_INI_ALL | |
date.default_longitude | «35.2333» | PHP_INI_ALL | |
date.sunrise_zenith | «90.583333» | PHP_INI_ALL | |
date.sunset_zenith | «90.583333» | PHP_INI_ALL | |
date.timezone | «» | PHP_INI_ALL | |
dba.default_handler | DBA_DEFAULT | PHP_INI_ALL | |
default_charset | «UTF-8» | PHP_INI_ALL | Default to «UTF-8». |
input_encoding | «» | PHP_INI_ALL | |
output_encoding | «» | PHP_INI_ALL | |
internal_encoding | «» | PHP_INI_ALL | |
default_mimetype | «text/html» | PHP_INI_ALL | |
default_socket_timeout | «60» | PHP_INI_ALL | |
disable_classes | «» | php.ini only | |
disable_functions | «» | php.ini only | |
display_errors | «1» | PHP_INI_ALL | |
display_startup_errors | «1» | PHP_INI_ALL | Prior to PHP 8.0.0, the default value was "0" . |
docref_ext | «» | PHP_INI_ALL | |
docref_root | «» | PHP_INI_ALL | |
doc_root | NULL | PHP_INI_SYSTEM | |
enable_dl | «1» | PHP_INI_SYSTEM | This deprecated feature will certainly be removed in the future. |
enable_post_data_reading | On | PHP_INI_PERDIR | |
engine | «1» | PHP_INI_ALL | |
error_append_string | NULL | PHP_INI_ALL | |
error_log | NULL | PHP_INI_ALL | |
error_prepend_string | NULL | PHP_INI_ALL | |
error_reporting | NULL | PHP_INI_ALL | |
exif.encode_unicode | «ISO-8859-15» | PHP_INI_ALL | |
exif.decode_unicode_motorola | «UCS-2BE» | PHP_INI_ALL | |
exif.decode_unicode_intel | «UCS-2LE» | PHP_INI_ALL | |
exif.encode_jis | «» | PHP_INI_ALL | |
exif.decode_jis_motorola | «JIS» | PHP_INI_ALL | |
exif.decode_jis_intel | «JIS» | PHP_INI_ALL | |
exit_on_timeout | «» | PHP_INI_ALL | |
expect.timeout | «10» | PHP_INI_ALL | |
expect.loguser | «1» | PHP_INI_ALL | |
expect.logfile | «» | PHP_INI_ALL | |
expect.match_max | «» | PHP_INI_ALL | |
expose_php | «1» | php.ini only | |
extension | NULL | php.ini only | |
extension_dir | «/path/to/php» | PHP_INI_SYSTEM | |
fastcgi.impersonate | «0» | PHP_INI_SYSTEM | |
fastcgi.logging | «1» | PHP_INI_SYSTEM | |
file_uploads | «1» | PHP_INI_SYSTEM | |
filter.default | «unsafe_raw» | PHP_INI_PERDIR | Deprecated as of PHP 8.1.0. |
filter.default_flags | NULL | PHP_INI_PERDIR | |
from | «» | PHP_INI_ALL | |
gd.jpeg_ignore_warning | «1» | PHP_INI_ALL | |
geoip.custom_directory | «» | PHP_INI_ALL | |
hard_timeout | «2» | PHP_INI_SYSTEM | Available since PHP 7.1.0. |
highlight.comment | «#FF8000» | PHP_INI_ALL | |
highlight.default | «#0000BB» | PHP_INI_ALL | |
highlight.html | «#000000» | PHP_INI_ALL | |
highlight.keyword | «#007700» | PHP_INI_ALL | |
highlight.string | «#DD0000» | PHP_INI_ALL | |
html_errors | «1» | PHP_INI_ALL | |
ibase.allow_persistent | «1» | PHP_INI_SYSTEM | |
ibase.max_persistent | «-1» | PHP_INI_SYSTEM | |
ibase.max_links | «-1» | PHP_INI_SYSTEM | |
ibase.default_db | NULL | PHP_INI_SYSTEM | |
ibase.default_user | NULL | PHP_INI_ALL | |
ibase.default_password | NULL | PHP_INI_ALL | |
ibase.default_charset | NULL | PHP_INI_ALL | |
ibase.timestampformat | «%Y-%m-%d %H:%M:%S» | PHP_INI_ALL | |
ibase.dateformat | «%Y-%m-%d» | PHP_INI_ALL | |
ibase.timeformat | «%H:%M:%S» | PHP_INI_ALL | |
ibm_db2.binmode | «1» | PHP_INI_ALL | |
ibm_db2.i5_all_pconnect | «0» | PHP_INI_SYSTEM | Available since ibm_db2 1.6.5. |
ibm_db2.i5_allow_commit | «0» | PHP_INI_SYSTEM | Available since ibm_db2 1.4.9. |
ibm_db2.i5_dbcs_alloc | «0» | PHP_INI_SYSTEM | Available since ibm_db2 1.5.0. |
ibm_db2.instance_name | NULL | PHP_INI_SYSTEM | Available since ibm_db2 1.0.2. |
ibm_db2.i5_ignore_userid | «0» | PHP_INI_SYSTEM | Available since ibm_db2 1.8.0. |
iconv.input_encoding | «» | PHP_INI_ALL | Deprecated in PHP 5.6.0. |
iconv.output_encoding | «» | PHP_INI_ALL | Deprecated in PHP 5.6.0. |
iconv.internal_encoding | «» | PHP_INI_ALL | Deprecated in PHP 5.6.0. |
ignore_repeated_errors | «0» | PHP_INI_ALL | |
ignore_repeated_source | «0» | PHP_INI_ALL | |
ignore_user_abort | «0» | PHP_INI_ALL | |
implicit_flush | «0» | PHP_INI_ALL | |
include_path | «.:/path/to/php/pear» | PHP_INI_ALL | |
intl.default_locale | PHP_INI_ALL | ||
intl.error_level | 0 | PHP_INI_ALL | |
intl.use_exceptions | 0 | PHP_INI_ALL | Available since PECL 3.0.0a1 |
last_modified | «0» | PHP_INI_ALL | |
ldap.max_links | «-1» | PHP_INI_SYSTEM | |
log_errors | «0» | PHP_INI_ALL | |
log_errors_max_len | «1024» | PHP_INI_ALL | |
mail.add_x_header | «0» | PHP_INI_PERDIR | |
mail.force_extra_parameters | NULL | php.ini only | |
mail.log | «» | PHP_INI_PERDIR | |
max_execution_time | «30» | PHP_INI_ALL | |
max_input_nesting_level | «64» | PHP_INI_PERDIR | |
max_input_vars | 1000 | PHP_INI_PERDIR | |
max_input_time | «-1» | PHP_INI_PERDIR | |
mbstring.language | «neutral» | PHP_INI_ALL | |
mbstring.detect_order | NULL | PHP_INI_ALL | |
mbstring.http_input | «pass» | PHP_INI_ALL | Deprecated |
mbstring.http_output | «pass» | PHP_INI_ALL | Deprecated |
mbstring.internal_encoding | NULL | PHP_INI_ALL | Deprecated |
mbstring.substitute_character | NULL | PHP_INI_ALL | |
mbstring.func_overload | «0» | PHP_INI_SYSTEM | Deprecated as of PHP 7.2.0; removed as of PHP 8.0.0. |
mbstring.encoding_translation | «0» | PHP_INI_PERDIR | |
mbstring.http_output_conv_mimetypes | «^(text/|application/xhtml xml)» | PHP_INI_ALL | |
mbstring.strict_detection | «0» | PHP_INI_ALL | |
mcrypt.algorithms_dir | null | PHP_INI_ALL | |
mcrypt.modes_dir | null | PHP_INI_ALL | |
memcache.allow_failover | «1» | PHP_INI_ALL | Available since memcache 2.0.2. |
memcache.max_failover_attempts | «20» | PHP_INI_ALL | Available since memcache 2.1.0. |
memcache.chunk_size | «8192» | PHP_INI_ALL | Available since memcache 2.0.2. |
memcache.default_port | «11211» | PHP_INI_ALL | Available since memcache 2.0.2. |
memcache.hash_strategy | «standard» | PHP_INI_ALL | Available since memcache 2.2.0. |
memcache.hash_function | «crc32» | PHP_INI_ALL | Available since memcache 2.2.0. |
memcache.protocol | ascii | >PHP_INI_ALL | Supported since memcache 3.0.0 |
memcache.redundancy | 1 | >PHP_INI_ALL | Supported since memcache 3.0.0 |
memcache.session_redundancy | 2 | >PHP_INI_ALL | Supported since memcache 3.0.0 |
memcache.compress_threshold | 20000 | >PHP_INI_ALL | Supported since memcache 3.0.3 |
memcache.lock_timeout | 15 | >PHP_INI_ALL | Supported since memcache 3.0.4 |
memory_limit | «128M» | PHP_INI_ALL | |
mysql.allow_local_infile | «1» | PHP_INI_SYSTEM | |
mysql.allow_persistent | «1» | PHP_INI_SYSTEM | |
mysql.max_persistent | «-1» | PHP_INI_SYSTEM | |
mysql.max_links | «-1» | PHP_INI_SYSTEM | |
mysql.trace_mode | «0» | PHP_INI_ALL | |
mysql.default_port | NULL | PHP_INI_ALL | |
mysql.default_socket | NULL | PHP_INI_ALL | |
mysql.default_host | NULL | PHP_INI_ALL | |
mysql.default_user | NULL | PHP_INI_ALL | |
mysql.default_password | NULL | PHP_INI_ALL | |
mysql.connect_timeout | «60» | PHP_INI_ALL | |
mysqli.allow_local_infile | «0» | PHP_INI_SYSTEM | Before PHP 7.2.16 and 7.3.3 the default was «1». |
mysqli.local_infile_directory | PHP_INI_SYSTEM | Available as of PHP 8.1.0. | |
mysqli.allow_persistent | «1» | PHP_INI_SYSTEM | |
mysqli.max_persistent | «-1» | PHP_INI_SYSTEM | |
mysqli.max_links | «-1» | PHP_INI_SYSTEM | |
mysqli.default_port | «3306» | PHP_INI_ALL | |
mysqli.default_socket | NULL | PHP_INI_ALL | |
mysqli.default_host | NULL | PHP_INI_ALL | |
mysqli.default_user | NULL | PHP_INI_ALL | |
mysqli.default_pw | NULL | PHP_INI_ALL | |
mysqli.reconnect | «0» | PHP_INI_SYSTEM | |
mysqli.rollback_on_cached_plink | «0» | PHP_INI_SYSTEM | |
mysqlnd.collect_statistics | «1» | PHP_INI_SYSTEM | |
mysqlnd.collect_memory_statistics | «0» | PHP_INI_SYSTEM | |
mysqlnd.debug | «» | PHP_INI_SYSTEM | |
mysqlnd.log_mask | 0 | PHP_INI_ALL | |
mysqlnd.mempool_default_size | 16000 | PHP_INI_ALL | |
mysqlnd.net_read_timeout | «86400» | PHP_INI_ALL | Before PHP 7.2.0 the default value was «31536000» and the changeability was PHP_INI_SYSTEM |
mysqlnd.net_cmd_buffer_size | «4096» | PHP_INI_SYSTEM | |
mysqlnd.net_read_buffer_size | «32768» | PHP_INI_SYSTEM | |
mysqlnd.sha256_server_public_key | «» | PHP_INI_PERDIR | |
mysqlnd.trace_alloc | «» | PHP_INI_SYSTEM | |
mysqlnd.fetch_data_copy | 0 | PHP_INI_ALL | |
oci8.connection_class | «» | PHP_INI_ALL | Available since PECL OCI8 1.3. |
oci8.default_prefetch | «100» | PHP_INI_SYSTEM | Available since PECL OCI8 1.1. |
oci8.events | Off | PHP_INI_SYSTEM | Available since PECL OCI8 1.3. |
oci8.max_persistent | «-1» | PHP_INI_SYSTEM | Available since PECL OCI8 1.1. |
oci8.old_oci_close_semantics | Off | PHP_INI_SYSTEM | Available since PECL OCI8 1.1. Deprecated as of PHP 8.1.0. |
oci8.persistent_timeout | «-1» | PHP_INI_SYSTEM | Available since PECL OCI8 1.1. |
oci8.ping_interval | «60» | PHP_INI_SYSTEM | Available since PECL OCI8 1.1. |
oci8.prefetch_lob_size | «0» | PHP_INI_SYSTEM | Available since PECL OCI8 3.2. |
oci8.privileged_connect | Off | PHP_INI_SYSTEM | Available since PECL OCI8 1.1. |
oci8.statement_cache_size | «20» | PHP_INI_SYSTEM | Available since PECL OCI8 1.1. |
odbc.default_db * | NULL | PHP_INI_ALL | |
odbc.default_user * | NULL | PHP_INI_ALL | |
odbc.default_pw * | NULL | PHP_INI_ALL | |
odbc.allow_persistent | «1» | PHP_INI_SYSTEM | |
odbc.check_persistent | «1» | PHP_INI_SYSTEM | |
odbc.max_persistent | «-1» | PHP_INI_SYSTEM | |
odbc.max_links | «-1» | PHP_INI_SYSTEM | |
odbc.defaultlrl | «4096» | PHP_INI_ALL | |
odbc.defaultbinmode | «1» | PHP_INI_ALL | |
odbc.default_cursortype | «3» | PHP_INI_ALL | |
opcache.enable | «1» | PHP_INI_ALL | |
opcache.enable_cli | «0» | PHP_INI_SYSTEM | Between PHP 7.1.2 and 7.1.6 inclusive, the default was «1» |
opcache.memory_consumption | «128» | PHP_INI_SYSTEM | |
opcache.interned_strings_buffer | «8» | PHP_INI_SYSTEM | |
opcache.max_accelerated_files | «10000» | PHP_INI_SYSTEM | |
opcache.max_wasted_percentage | «5» | PHP_INI_SYSTEM | |
opcache.use_cwd | «1» | PHP_INI_SYSTEM | |
opcache.validate_timestamps | «1» | PHP_INI_ALL | |
opcache.revalidate_freq | «2» | PHP_INI_ALL | |
opcache.revalidate_path | «0» | PHP_INI_ALL | |
opcache.save_comments | «1» | PHP_INI_SYSTEM | |
opcache.fast_shutdown | «0» | PHP_INI_SYSTEM | Removed in PHP 7.2.0 |
opcache.enable_file_override | «0» | PHP_INI_SYSTEM | |
opcache.optimization_level | «0x7FFEBFFF» | PHP_INI_SYSTEM | Changed from 0x7FFFBFFF in PHP 7.3.0 |
opcache.inherited_hack | «1» | PHP_INI_SYSTEM | Removed in PHP 7.3.0 |
opcache.dups_fix | «0» | PHP_INI_ALL | |
opcache.blacklist_filename | «» | PHP_INI_SYSTEM | |
opcache.max_file_size | «0» | PHP_INI_SYSTEM | |
opcache.consistency_checks | «0» | PHP_INI_ALL | |
opcache.force_restart_timeout | «180» | PHP_INI_SYSTEM | |
opcache.error_log | «» | PHP_INI_SYSTEM | |
opcache.log_verbosity_level | «1» | PHP_INI_SYSTEM | |
opcache.record_warnings | «0» | PHP_INI_SYSTEM | Available as of PHP 8.0.0 |
opcache.preferred_memory_model | «» | PHP_INI_SYSTEM | |
opcache.protect_memory | «0» | PHP_INI_SYSTEM | |
opcache.mmap_base | null | PHP_INI_SYSTEM | |
opcache.restrict_api | «» | PHP_INI_SYSTEM | |
opcache.file_update_protection | «2» | PHP_INI_ALL | |
opcache.huge_code_pages | «0» | PHP_INI_SYSTEM | |
opcache.lockfile_path | «/tmp» | PHP_INI_SYSTEM | |
opcache.opt_debug_level | «0» | PHP_INI_SYSTEM | Available as of PHP 7.1.0 |
opcache.file_cache | NULL | PHP_INI_SYSTEM | |
opcache.file_cache_only | «0» | PHP_INI_SYSTEM | |
opcache.file_cache_consistency_checks | «1» | PHP_INI_SYSTEM | |
opcache.file_cache_fallback | «1» | PHP_INI_SYSTEM | Windows only. |
opcache.validate_permission | «0» | PHP_INI_SYSTEM | Available as of PHP 7.0.14 |
opcache.validate_root | «0» | PHP_INI_SYSTEM | Available as of PHP 7.0.14 |
opcache.preload | «» | PHP_INI_SYSTEM | Available as of PHP 7.4.0 |
opcache.preload_user | «» | PHP_INI_SYSTEM | Available as of PHP 7.4.0 |
opcache.cache_id | «» | PHP_INI_SYSTEM | Windows only. Available as of PHP 7.4.0 |
opcache.jit | «tracing» | PHP_INI_ALL | Available as of PHP 8.0.0 |
opcache.jit_buffer_size | «0» | PHP_INI_SYSTEM | Available as of PHP 8.0.0 |
opcache.jit_debug | «0» | PHP_INI_ALL | Available as of PHP 8.0.0 |
opcache.jit_bisect_limit | «0» | PHP_INI_ALL | Available as of PHP 8.0.0 |
opcache.jit_prof_threshold | «0.005» | PHP_INI_ALL | Available as of PHP 8.0.0 |
opcache.jit_max_root_traces | «1024» | PHP_INI_SYSTEM | Available as of PHP 8.0.0 |
opcache.jit_max_side_traces | «128» | PHP_INI_SYSTEM | Available as of PHP 8.0.0 |
opcache.jit_max_exit_counters | «8192» | PHP_INI_SYSTEM | Available as of PHP 8.0.0 |
opcache.jit_hot_loop | «64» | PHP_INI_SYSTEM | Available as of PHP 8.0.0 |
opcache.jit_hot_func | «127» | PHP_INI_SYSTEM | Available as of PHP 8.0.0 |
opcache.jit_hot_return | «8» | PHP_INI_SYSTEM | Available as of PHP 8.0.0 |
opcache.jit_hot_side_exit | «8» | PHP_INI_SYSTEM | Available as of PHP 8.0.0 |
opcache.jit_blacklist_root_trace | «16» | PHP_INI_ALL | Available as of PHP 8.0.0 |
opcache.jit_blacklist_side_trace | «8» | PHP_INI_ALL | Available as of PHP 8.0.0 |
opcache.jit_max_loop_unrolls | «8» | PHP_INI_ALL | Available as of PHP 8.0.0 |
opcache.jit_max_recursive_calls | «2» | PHP_INI_ALL | Available as of PHP 8.0.0 |
opcache.jit_max_recursive_returns | «2» | PHP_INI_ALL | Available as of PHP 8.0.0 |
opcache.jit_max_polymorphic_calls | «2» | PHP_INI_ALL | Available as of PHP 8.0.0 |
open_basedir | NULL | PHP_INI_ALL | |
output_buffering | «0» | PHP_INI_PERDIR | |
output_handler | NULL | PHP_INI_PERDIR | |
pcre.backtrack_limit | «1000000» | PHP_INI_ALL | |
pcre.recursion_limit | «100000» | PHP_INI_ALL | |
pcre.jit | «1» | PHP_INI_ALL | |
pdo.dsn.* | php.ini only | ||
pdo_odbc.connection_pooling | «strict» | PHP_INI_ALL | |
pdo_odbc.db2_instance_name | NULL | PHP_INI_SYSTEM | This deprecated feature will certainly be removed in the future. |
pgsql.allow_persistent | «1» | PHP_INI_SYSTEM | |
pgsql.max_persistent | «-1» | PHP_INI_SYSTEM | |
pgsql.max_links | «-1» | PHP_INI_SYSTEM | |
pgsql.auto_reset_persistent | «0» | PHP_INI_SYSTEM | |
pgsql.ignore_notice | «0» | PHP_INI_ALL | |
pgsql.log_notice | «0» | PHP_INI_ALL | |
phar.readonly | «1» | PHP_INI_ALL | |
phar.require_hash | «1» | PHP_INI_ALL | |
phar.cache_list | «» | PHP_INI_SYSTEM | |
post_max_size | «8M» | PHP_INI_PERDIR | |
precision | «14» | PHP_INI_ALL | |
realpath_cache_size | «16K» | PHP_INI_SYSTEM | |
realpath_cache_ttl | «120» | PHP_INI_SYSTEM | |
register_argc_argv | «1» | PHP_INI_PERDIR | |
report_memleaks | «1» | PHP_INI_ALL | |
report_zend_debug | «1» | PHP_INI_ALL | |
request_order | «» | PHP_INI_PERDIR | |
runkit.superglobal | «» | PHP_INI_PERDIR | |
runkit.internal_override | «0» | PHP_INI_SYSTEM | |
sendmail_from | NULL | PHP_INI_ALL | |
sendmail_path | «/usr/sbin/sendmail -t -i» | PHP_INI_SYSTEM | |
serialize_precision | «-1» | PHP_INI_ALL | Prior to PHP 7.1.0, the default value was 17. |
session.save_path | «» | PHP_INI_ALL | |
session.name | «PHPSESSID» | PHP_INI_ALL | |
session.save_handler | «files» | PHP_INI_ALL | |
session.auto_start | «0» | PHP_INI_PERDIR | |
session.gc_probability | «1» | PHP_INI_ALL | |
session.gc_divisor | «100» | PHP_INI_ALL | |
session.gc_maxlifetime | «1440» | PHP_INI_ALL | |
session.serialize_handler | «php» | PHP_INI_ALL | |
session.cookie_lifetime | «0» | PHP_INI_ALL | |
session.cookie_path | «/» | PHP_INI_ALL | |
session.cookie_domain | «» | PHP_INI_ALL | |
session.cookie_secure | «0» | PHP_INI_ALL | Prior to PHP 7.2.0, the default was "" . |
session.cookie_httponly | «0» | PHP_INI_ALL | Prior to PHP 7.2.0, the default was "" . |
session.cookie_samesite | «» | PHP_INI_ALL | Available as of PHP 7.3.0. |
session.use_strict_mode | «0» | PHP_INI_ALL | |
session.use_cookies | «1» | PHP_INI_ALL | |
session.use_only_cookies | «1» | PHP_INI_ALL | |
session.referer_check | «» | PHP_INI_ALL | |
session.cache_limiter | «nocache» | PHP_INI_ALL | |
session.cache_expire | «180» | PHP_INI_ALL | |
session.use_trans_sid | «0» | PHP_INI_ALL | |
session.trans_sid_tags | «a=href,area=href,frame=src,form=» | PHP_INI_ALL | Available as of PHP 7.1.0. |
session.trans_sid_hosts | $_SERVER['HTTP_HOST'] | PHP_INI_ALL | Available as of PHP 7.1.0. |
session.sid_length | «32» | PHP_INI_ALL | Available as of PHP 7.1.0. |
session.sid_bits_per_character | «4» | PHP_INI_ALL | Available as of PHP 7.1.0. |
session.upload_progress.enabled | «1» | PHP_INI_PERDIR | |
session.upload_progress.cleanup | «1» | PHP_INI_PERDIR | |
session.upload_progress.prefix | «upload_progress_» | PHP_INI_PERDIR | |
session.upload_progress.name | «PHP_SESSION_UPLOAD_PROGRESS» | PHP_INI_PERDIR | |
session.upload_progress.freq | «1%» | PHP_INI_PERDIR | |
session.upload_progress.min_freq | «1» | PHP_INI_PERDIR | |
session.lazy_write | «1» | PHP_INI_ALL | |
session.hash_function | «0» | PHP_INI_ALL | Removed as of PHP 7.1.0. |
session.hash_bits_per_character | «4» | PHP_INI_ALL | Removed as of PHP 7.1.0. |
session.entropy_file | «» | PHP_INI_ALL | Removed as of PHP 7.1.0. |
session.entropy_length | «0» | PHP_INI_ALL | Removed as of PHP 7.1.0 |
short_open_tag | «1» | PHP_INI_PERDIR | |
SMTP | «localhost» | PHP_INI_ALL | |
smtp_port | «25» | PHP_INI_ALL | |
soap.wsdl_cache_enabled | 1 | PHP_INI_ALL | |
soap.wsdl_cache_dir | /tmp | PHP_INI_ALL | |
soap.wsdl_cache_ttl | 86400 | PHP_INI_ALL | |
soap.wsdl_cache | 1 | PHP_INI_ALL | |
soap.wsdl_cache_limit | 5 | PHP_INI_ALL | |
sql.safe_mode | «0» | PHP_INI_SYSTEM | |
sqlite3.extension_dir | «» | PHP_INI_SYSTEM | |
sqlite3.defensive | 1 | PHP_INI_SYSTEM | Available as of PHP 7.2.17 and 7.3.4 for libsqlite ≥ 3.26.0. |
syslog.facility | «LOG_USER» | PHP_INI_SYSTEM | Available as of PHP 7.3.0. |
syslog.filter | «no-ctrl» | PHP_INI_ALL | Available as of PHP 7.3.0. |
syslog.ident | «php» | PHP_INI_SYSTEM | Available as of PHP 7.3.0. |
sys_temp_dir | «» | PHP_INI_SYSTEM | |
sysvshm.init_mem | 10000 | PHP_INI_SYSTEM | |
tidy.default_config | «» | PHP_INI_SYSTEM | |
tidy.clean_output | «0» | PHP_INI_USER | |
track_errors | «0» | PHP_INI_ALL | Deprecated as of PHP 7.2.0, removed as of PHP 8.0.0 |
unserialize_callback_func | NULL | PHP_INI_ALL | |
uploadprogress.file.filename_template | «/tmp/upt_%s.txt» | PHP_INI_ALL | |
upload_max_filesize | «2M» | PHP_INI_PERDIR | |
max_file_uploads | 20 | PHP_INI_SYSTEM | |
upload_tmp_dir | NULL | PHP_INI_SYSTEM | |
url_rewriter.tags | «a=href,area=href,frame=src,form=,fieldset=» | PHP_INI_ALL | |
user_agent | NULL | PHP_INI_ALL | |
user_dir | NULL | PHP_INI_SYSTEM | |
user_ini.cache_ttl | «300» | PHP_INI_SYSTEM | |
user_ini.filename | «.user.ini» | PHP_INI_SYSTEM | |
uopz.disable | «0» | PHP_INI_SYSTEM | Available as of uopz 5.0.2 |
uopz.exit | «0» | PHP_INI_SYSTEM | Available as of uopz 6.0.1 |
uopz.overloads | «1» | PHP_INI_SYSTEM | Available as of uopz 2.0.2. Removed as of uopz 5.0.0. |
variables_order | «EGPCS» | PHP_INI_PERDIR | |
vld.active | «0» | PHP_INI_SYSTEM | |
vld.execute | «1» | PHP_INI_SYSTEM | Available since vld 0.8.0. |
vld.skip_append | «0» | PHP_INI_SYSTEM | Available since vld 0.8.0. |
vld.skip_prepend | «0» | PHP_INI_SYSTEM | Available since vld 0.8.0. |
windows.show_crt_warning | «0» | PHP_INI_ALL | |
xbithack | «0» | PHP_INI_ALL | |
xmlrpc_errors | «0» | PHP_INI_SYSTEM | |
xmlrpc_error_number | «0» | PHP_INI_ALL | |
yaz.keepalive | «120» | PHP_INI_ALL | |
yaz.log_mask | NULL | PHP_INI_ALL | Available since yaz 1.0.3. |
zend.assertions | «1» | PHP_INI_ALL | |
zend.detect_unicode | «1» | PHP_INI_ALL | |
zend.enable_gc | «1» | PHP_INI_ALL | |
zend.multibyte | «0» | PHP_INI_PERDIR | |
zend.script_encoding | NULL | PHP_INI_ALL | |
zend.signal_check | «0» | PHP_INI_SYSTEM | |
zend_extension | NULL | php.ini only | |
zlib.output_compression | «0» | PHP_INI_ALL | |
zlib.output_compression_level | «-1» | PHP_INI_ALL | |
zlib.output_handler | «» | PHP_INI_ALL |
Php: установка — manual
After many frustrating hours of trying to figure out the install (again), It took a while, but here are a couple tips:
PHP working with IIS uses c:winntphp.ini
It doesn’t matter what you set the path to, nor what you set the PHPRC environment variable to. After you get PHP running correctly in the installation folder (using php -i) copy the php.ini file into the c:winnt folder.
Here’s what worked for me:
— Add PHP path to System environment variable
— Add php5activescript.dll from http://snaps.shhost.ru/ to the PHP folder, then Register it: «regsvr32 php5activescript.dll»
Set extension_dir and doc_root directives in PHP.INI:
extension_dir = C:WWWPHPext
doc_root = C:WWWSite
cgi.force_redirect = 0
(the last cgi.force_redirect isn’t required, but I like to set it anyway)
Copy the .INI file into WINNT folder
In IIS Manager, right-click «Default Web Site», Click «Home Directory»,
Click «Configuration», «Add» the ISAPI application:
Executable: <your php install>php5isapi.dll
Extension: .php
Limit to: GET,HEAD,POST
Check: «Script Engine»
Uncheck: «Check that file exists»
Finally: Set up an ISAPI filter:
Click the «ISAPI Filters» tab,
Filter Name: PHP
Executable: <your php install>php5isapi.dll
Notes: You don’t have to set any of your folders as «Script source» folders. .PHP files aren’t scripts, merely text files that require processing before being shipped off to the browser, which is what the ISAPI filter does.
Finally, working again.
Chase
Why is my php.ini not found?
I config/make/make install php on a system where php is already installed:
./configure --prefix=/opt/php
--with-config-file-path=/opt/php/etc --with-config-file-scan-dir=/opt/php/etc/php.d
--enable-fpm --with-fpm-user=ec2-user --with-fpm-group=ec2-user --disable-debug
--enable-exif --with-curl --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-
pdo-mysql=mysqlnd --with-zlib --enable-zip --enable-bcmath --enable-calendar
--enable-ftp --with-mhash --with-openssl --with-mcrypt --enable-mbstring --enable-
mbregex --with-gd --with-jpeg-dir --with-png-dir
(all ok) however, when I type php —ini (inside /opt/php/bin) I get the old stuff:
> Configuration File (php.ini) Path:
> /etc Loaded Configuration File:
> /etc/php.ini Scan for additional .ini
> files in: /etc/php.d Additional .ini
> files parsed: /etc/php.d/apc.ini,
> /etc/php.d/curl.ini,
> /etc/php.d/fileinfo.ini,
> /etc/php.d/json.ini,
> /etc/php.d/mbstring.ini,
> /etc/php.d/phar.ini,
why / how can i fix this?
my bashrc:
if [ -d «/opt/php/bin»] && [ -d
«/opt/php/sbin» ]; then
PATH=»$path:/opt/php/bin:/opt/php/bin»
my php-config looks ok:
Usage: ./php-config [OPTION]
Options:
--prefix [/opt/php]
--includes [-I/opt/php/include/php -I/opt/php/include/php/main -I/opt/php/include/php/TSRM -I/opt/php/include/php/Zend -I/opt/php/include/php/ext -I/opt/php/include/php/ext/date/lib]
--ldflags []
--libs [-lcrypt -lz -lcrypt -lrt -lmcrypt -lltdl -lpng -lz -ljpeg -lcurl -lz -lrt -lm -ldl -lnsl -lrt -lxml2 -lz -lm -lssl -lcrypto -ldl -lz -lcurl -lxml2 -lz -lm -lssl -lcrypto -ldl -lz -lxml2 -lz -lm -lcrypt -lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt ]
--extension-dir [/opt/php/lib/php/extensions/no-debug-non-zts-20090626]
--include-dir [/opt/php/include/php]
--php-binary [/opt/php/bin/php]
--php-sapis [cli fpm]
--configure-options [--prefix=/opt/php --with-config-file-path=/opt/php/etc --with-config-file-scan-dir=/opt/php/etc/php.d --enable-fpm --with-fpm-user=ec2-user --with-fpm-group=ec2-user --disable-debug --enable-exif --with-curl --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-zlib --enable-zip --enable-bcmath --enable-calendar --enable-ftp --with-mhash --with-openssl --with-mcrypt --enable-mbstring --enable-mbregex --with-gd --with-jpeg-dir --with-png-dir]
--version [5.3.5]
--vernum [50305]
but… myphp.ini does not, it seems my —with-config-file-path=PATH (Sets the path in which to look for php.ini, defaults to PREFIX/lib.) somehow is not working?
Где находится php.ini?
В этом разделе мы увидим, как найти файл php.ini, который загружается при запуске сценария PHP. Это может быть непросто — расположение файла php.ini сильно зависит от среды, в которой вы используете PHP. Если вы работаете в Windows, вы, скорее всего, найдете файл php.ini в каталоге вашей установки PHP на системном диске.
Здесь на phpinfo() приходит функция phpinfo() . Он скажет вам, где находится php.ini , а также выведет всю важную информацию о конфигурации PHP.
Вы можете запустить phpinfo() , создав файл .php и вызвав эту функцию.Создайте файл phpinfo.php со следующим содержимым и поместите его в корневой каталог документа:
Загрузите этот файл в свой браузер, и вы должны увидеть вывод phpinfo() . Посмотрите на следующий раздел.
Как видите, есть два раздела. Первый, путь к файлу конфигурации (php.ini) , указывает путь по умолчанию для файла php.ini в вашей системе. И второй, Loaded Configuration File , — это путь, из которого загружается файл php.ini при запуске PHP.
Таким образом, вы можете редактировать файл php.ini, указанный в разделе « Загруженный файл конфигурации », и это должно работать в большинстве случаев. Конечно, если вы используете PHP как модуль Apache, вам необходимо перезапустить сервер Apache, чтобы убедиться, что изменения, внесенные вами в файл php.ini , отражены.
С другой стороны, если вы используете программное обеспечение, такое как WAMP или XAMPP, для запуска стека веб-разработки, вам еще проще изменить файл php.ini — вы можете напрямую получить к нему доступ через пользовательский интерфейс WAMP или XAMPP.
В следующем разделе мы рассмотрим несколько важных настроек в файле php.ini .
Как изменить значение опций, имеющих статус изменяемости php_ini_perdir или php_ini_all
Вы можете изменить некоторые директивы PHP непосредственно в личном кабинете. Для этого перейдите в раздел «Услуги», выберите виртуальную площадку и нажмите на Вашем сайте, для которого нужно изменить настройки PHP. На странице с параметрами размещенного сайта найдите строку Конфигурация PHP и нажмите изменить, как показано на рисунке:
На открывшейся странице Вам будет доступен интерфейс управления некоторыми настройками PHP-интерпретатора:
Если нужной директивы со статусом изменяемости PHP_INI_PERDIR или PHP_INI_ALL нет в списке, Вы можете изменить ее с помощью управляющего файла .htaccess
В следующем примере мы изменим значение директивы mail.log, которая в качестве параметра принимает путь до файла, в который будут записываться все вызовы функции mail() при отправке писем скриптами сайта. Для этого воспользуемся файлом .htaccess, в который нужно добавить всего одну строчку.
php_value mail.log "/home/u12345/phpmail.log"
Теперь все вызовы функции mail() скриптами этого сайта будут записываться в файл phpmail.log в корне площадки u12345. Аналогичным образом можно менять и другие директивы, если их статус изменяемости соответствует PHP_INI_PERDIR или PHP_INI_ALL.
Напомним значение и расшифровку констант PHP_INI_*:
Список, описание и статус изменяемости директив можно найти в приложении G документации PHP.
Как настроить php.ini под свои потребности?
Настройка важных и второстепенных параметров может быть весьма долгим процессом. Если у вас есть выделенный веб сервер, и вы хотите тонко настроить его работу, то рекомендуем обратиться к одному из онлайн руководств по параметрам в PHP.ini для продвинутых пользователей. Сам процесс задания параметров сводится к изменению числовых или текстовых значений для одной из строк-директив.
Вот некоторые из настроек, которые можно изменить, если владелец хостинга разрешает использовать php.ini и редактировать его самостоятельно:
post_max_size
upload_max_filesize
Эти две строки важны для любого пользователя, желающего снять ограничение на объем загружаемых файлов. Эта настройка проверяется при импорте записей в Вордпресс и другие CMS того же типа, значения по умолчанию в целях безопасности сервера сделаны очень скромными.
max_execution_time
max_input_time
Здесь задается максимальное время в секундах, которое отводится на выполнение каждого скрипта и загрузку данных в процессе его работы соответственно.
memory_limit = 16M
Эта важная директива задает максимальное выделение памяти под один отдельный скрипт. Не завышайте это значение, если не знаете, для чего это может понадобиться. Скрипты PHP достаточно легковесны с точки зрения обычного пользователя.
Не забудьте сохранить изменения в файле и полностью перезапустить сервер – тогда настройки будут взяты из обновленного файла php.ini, и вы сможете проверить изменения.
Собственный php.ini на хостинге с панелью управления cpanel | заметки лёвика
Как создать собственную конфигурацию php.ini на хостинге с панелью управления Cpanel
Конфигурационные переменные php можно изменять следующими способами:
Можно воспользоваться функцией php ini_set(varname, newvalue) — устанавливает для переменной varname значение newvalue на время выполнения скрипта. Однако, не для всех переменных можно задать значение этой функцией. Некоторые переменные нельзя изменять как непосредственно в скрипте, так и в .htaccess.
К тому же, довольно часто в целях безопасности хостер запрещает использование php_value и php_flag в .htaccess-файлах. Однако, как быть, если требуется изменить конфигурацию php?
Конфигурируем CPanel для использования собственного php.ini
Следует отметить, что такая возможность предоставляется не всеми хостерами — можно уточнить у техподдержки хостинга, либо.. проверить методом тыка.
В файле .htaccess корневого каталога public_html, добавляем строчки (заменяя user на имя пользователя в cpanel):
suPHP_ConfigPath /home/user/public_html
<Files php.ini>
order allow,deny
deny from all
</Files>
Создаем файл php.ini этого же каталога (public_html) в который помещаем информацию о конфигурационных переменных php:
register_globals = Off
max_execution_time = 1000
post_max_size = 5M
memory_limit = 10M
upload_max_filesize = 10M
Также в собственном php.ini файле можно указать требуемую для ZEND-optimizer информацию
Метки: cpanel, хостинг
Вы можете добавить комментарий, или trackback со своего сайта.
Вывод ошибок в php
Иногда возникает необходимость получить информацию о том, какие ошибки возникают при выполнении PHP-скриптов. При использовании PHP как модуля Apache (по умолчанию именно так) вывод ошибок доступен в личном кабинете в меню Услуги, выбрав виртуальную площадку, где размещен сайт, затем Домен в списке сайтов, далее в параметрах Журнал регистрации ошибок: > error_log.
Иногда имеет смысл включить вывод ошибок PHP-скриптов на экран. Возможно 2 случая:
Если Вы используйте PHP-интерпретатор как модуль Apache, создайте в той директории, где находятся скрипты, файл .htaccess (если он не существует) и добавьте 2 строки, одна из которых включает вывод ошибок в браузер, а вторая определяет уровень отображаемых ошибок:
php_flag display_errors on php_value error_reporting 2047
Число 2047 является значением константы E_ALL и включает вывод всех типов ошибок. Значение константы E_ALL зависит от версии PHP. Точное значение можно узнать на сайте разработчика.
Если Вы используете PHP-интерпретатор как CGI, то для вывода ошибок следует в файле настроек для PHP, изменить значение параметра
display_errors = Off
display_errors = On
Кроме этого, надо изменить значение параметра error_reporting со значения E_ALL & E_NOTICE на простое E_ALL (по желанию).
Ошибки при выполнении PHP-скриптов могут быть разного типа. Полный список констант, определяющих тип отображаемых ошибок, может быть найден на сайте разработчика