Редактирование php ini. Обращение за помощью к поддержке хостинг-провайдера. Увеличение лимита загрузки на MAMP


Прямая ссылка: php-5.3.10-Win32-VC9-x86.zip
Заодно скачайте сразу и документацию на русском языке в формате.chm, она вам понадобится при изучении и работе: php_enhanced_ru.chm

Распакуйте архив в желаемый каталог (изначально предлагается "C:\php"). Откройте конфигурационный файл содержащий рекомендуемые настройки - "php.ini-development" (находящийся в корне дистрибутива), переименуйте его в php.ini и произведите следующие изменения.

Редакция php.ini:

  1. Найдите строку:
    post_max_size = 8M
    Увеличьте до 16 Мбайт максимальный размер данных принимаемых методом POST, изменив ее на:
    post_max_size = 16M
  2. Найдите строку:
    ;include_path = ".;c:\php\includes"
    Раскомментируйте ее, убрав перед строкой символ точки с запятой.
    (Внимание исключение! Обратные косые черты при указании пути):
    include_path = ".;c:\php\includes"
    Создайте пустой каталог "C:\php\includes", для хранения подключаемых классов.
  3. Найдите строку:
    extension_dir = "./"
    Установите значением данной директивы путь к папке с расширениями:
    extension_dir = "C:/php/ext"
  4. Найдите строку:
    ;upload_tmp_dir =
    Раскомментируйте ее и укажите в значении следующий путь:
    upload_tmp_dir = "C:/php/upload"
    Создайте пустую папку "C:\php\upload", для хранения временных файлов загружаемых через HTTP.
  5. Найдите строку:
    upload_max_filesize = 2M
    Увеличьте максимально допустимый размер загружаемых файлов до 16 Мбайт:
    upload_max_filesize = 16M
  6. Подключите, расскомментировав, данные библиотеки расширений:
    extension=php_bz2.dll
    extension=php_curl.dll
    extension=php_gd2.dll
    extension=php_mbstring.dll
    extension=php_mysql.dll
    extension=php_mysqli.dll
  7. Найдите строку:
    ;date.timezone =
    Раскомментируйте и установите значением часовой пояс вашего местоположения (список часовых поясов можно найти в документации):
    date.timezone = "Europe/Moscow"
  8. Найдите строку:
    ;session.save_path = "/tmp"
    Раскомментируйте и установите значением данной директивы такой путь:
    session.save_path = "C:/php/tmp"
    Создайте пустую папку "C:\php\tmp" для хранения временных файлов сессий.
Сохраните изменения и закройте файл php.ini.

Далее необходимо добавить каталог с установленным PHP интерпретатором в PATH операционной системы. Для чего пройдите по пути "Start" ("Пуск") -> "Control Panel" ("Панель управления") -> "System" ("Система"), откройте вкладку "Advanced" ("Дополнительно"), нажмите кнопку "Environment Variables" ("Переменные среды"), в разделе "System Variables" ("Системные переменные") сделайте двойной щелчок на строке "Path", добавьте в поле "Variable Value" ("Значение переменной"), к тому что там уже существует, путь к каталогу с установленным PHP, например, "C:\php" (без кавычек). Обратите внимание на то что символ точки с запятой разделяет пути. Чтобы внесенные изменения вступили в силу, перезагрузите операционную систему.

Пример строки Path:
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\php;C:\Program Files\MySQL\MySQL Server 5.5\bin

Установка и настройка PHP интерпретатора – завершена.

Описание подключаемых библиотек:

php_bz2.dll – С помощью данного расширения PHP сможет создавать и распаковывать архивы в формате bzip2.

php_curl.dll – Очень важная и нужная библиотека, позволяющая соединяться и работать с серверами, с помощью огромного количества интернет-протоколов.

php_gd2.dll – Ещё одна незаменимая библиотека, позволяющая работать с графикой. Вы думали на PHP можно только HTML странички генерировать? А вот и нет! С помощью PHP можно почти всё, в том числе и рисовать.

php_mbstring.dll – Библиотека содержит функции для работы с много-байтными кодировками, к которым относятся кодировки восточных языков (японский, китайский, корейский), Юникод (UTF-8) и другие.

php_mysql.dll – Имя библиотеки говорит само за себя - она необходима для работы с сервером MySQL.

php_mysqli.dll Данная библиотека является расширением предыдущей и содержит дополнительные функции PHP для работы с сервером MySQL версии 4.1.3 и выше.

Данных библиотек должно хватить для полноценной работы PHP. Со временем, если появится такая необходимость, вы сможете подключить дополнительные библиотеки, но не стоит подключать их все сразу с мыслью, что кашу маслом не испортишь, в данном случае излишнее количество подключенных библиотек может заметно замедлить работу PHP.

«

Сегодня поговорим о wordpress. Бывает так, что необходимо перенести данные с одного сайта вордпресс на другой. Например новости и комментарии. Но почему-то так получилось, что далеко не все знают, что в wordpress предусмотрена данная возможность. Находится она в инструментах и делится на две функции экспорт и импорт wordpress. То есть, сегодня мы узнаем, как экспортировать данные нашего сайта, а затем импортировать их на другой. А также ответим на вопрос, который интересует многих кто пользовался импортом, где находится файл php.ini и как увеличить максимальный размер, для загружаемого файла.

Что такое экспорт wordpres s? Это функция, с помощью которой мы можем скачать файл в формате XML к себе на компьютер, который будет содержать записи, комментарии, страницы, рубрики и другие данные вашего сайта.

Для чего это может пригодиться? Экспорт может быть полезен, когда необходимо быстро перенести, например записи, с одного сайта wordpress на другой. Например, с локального сервера на хостинг.

Для того чтобы осуществить экспорт wordpress на свой компьютер, необходимо в меню админки выбрать инструменты и экспорт. После этого, нужно выбрать, что мы хотим сохранить, я чаще выбираю все. Выбираем и нажимаем на кнопку «скачать файл экспорта».

Теперь мы можем приступить к импорту файлов, на нужный сайт wordpress. Для этого, переходим в инструменты и импорт. После перехода, мы увидим обширный список возможностей импорта. Импорт файлов можно осуществить со многих систем не только с wordpress. Но в данном случае нас интересует именно с wordpress на вордпресс. А по поводу других систем, думаю, что все работает по аналогии.

Итак, для импорта нам необходимо установить плагин, что мы и сделаем. Выбираем строку с системой управления wordpress и нажимаем на нее.

После того, как плагин установится, нужно выбрать файл на компьютере и нажать на кнопку «загрузить и импортировать файл». И обратите внимание, что по умолчанию мы можем загрузить файл не более 2 мегабайт.

Если не появится никаких ошибок, то мы увидим окно, в котором мы сможем задать некоторые настройки. Например, назначить автора, для содержания, которое мы загружаем на сайт. А также, можно создать нового пользователя, для содержимого. Это, скорее всего, может пригодиться, если у нас на сайте есть регистрация и статьи публикуют разные пользователи. Но я не пользовался этими настройками. Я просто нажимал на кнопку «Представлять» или «Submit».

После чего появляется список импортированных данных. И в самом низу строка «All done» сообщала, что все готово и прошел удачно.


После этого, можно проверить загруженные данные и деактивировать плагин, который был установлен для импорта данных. А затем и удалить его, если в нем больше нет необходимости.

Но могут возникнуть и проблемы, например, если наш файл больше максимального, разрешенного размера, то вы увидите такую ошибку.

Что делать в этом случае? Необходимо изменить максимальное значение загружаемого файла, которое находится в файле php.ini.

Где найти php.ini и как изменить максимальные значения?

Теперь только остается правильно распределить свое время, это можно сделать, например, с помощью сайта — http://www.plan-your-time.com/ . Казалось бы, причем здесь время? Да все очень просто. Если наш сайт находится на хостинге, а не на , то самый простой вариант, это обратиться с данным вопросом в тех. поддержку, что сэкономит наше время и нервы. Так как файл php.ini не всегда позволяют редактировать. И тем более, не факт, что вам позволят использовать максимальное значение больше, чем 50 мегабайт, поэтому лучше сначала обратиться к хостеру и уточнить все тонкости, относящиеся к данным настройкам.

Если же, по каким-то причинам мы хотим сделать все сами. То для начала, нам необходимо найти данный файл. Для этого, в текстовом редакторе нужно создать php файл, назвать его можно, как угодно, например 1. В данный файл нужно добавить строку:

;

После этого, переходим на сайт и набираем в адресной строке: http://наш_сайт.ru/1.php. После этого, мы увидим конфигурацию php, а также узнаем, где находится файл php.ini . Местонахождение файла указано в строке «Loaded Configuration File». В моем случае, я ищу на локальном сервере denwer.


После того, как мы узнали, где находится php.ini, переходим по указанному пути и открываем его в текстовом редакторе. Ищем строку:

Upload_max_filesize

И меняем значение на необходимое. Например, если я заменил данное значение на 32, то теперь по идее должно быть можно загружать до 32 мегабайт, но в моем случае ограничение изменилось, но не на мое. Теперь, можно загрузить до 8Mb. Мне этого достаточно, но если нужно больше? Тогда ищем строку:

Post_max_size

В ней-то и было ограничение равное 8. После замены значения, максимум изменился до 32Mb. Что нам и требовалось.

Если же наш сайт находится на хостинге, то конечно же можно сделать тоже самое. Но часто бывает, что файл php.ini не удается найти, так как хостеры его прячут или что ни там с ним еще делают я не знаю, почему и рекомендовал, для начала обратиться в службу поддержки. Конечно, данный файл, скорее всего можно и самому создать, но зачем нам это? Есть простой вариант, с помощью.htaccess.

Для этого, подключаемся, через ftp-клиент, находим в корневой папке сайта файл.htaccess и открываем в текстовом редакторе, например в блокноте. И добавляем в самое начало:

Php_value upload_max_filesize 32M php_value post_max_size 32M

После этого, сохраняем файл и закачиваем обратно на сервер. Теперь максимальное значение будет 32 Mb. У вас конечно может быть другая цифра, но учтите, что многие хостеры позволяют устанавливать данное значение только до 50Mb, не более.

Вот и все. Получилась конечно целая эпопея, но зато теперь вы знаете, как осуществить экспорт и импорт wordpress, и самое главное где найти php.ini и как его отредактировать, а также как увеличить максимальный размер загружаемого файла на хостинге, с помощью.htaccess.

Новые встроенные медиа плееры WordPress делают систему мощной платформой для потокового видео и аудио. Однако вы, вероятно, уже заметили, что WordPress имеет ограничения по максимальному размеру файлов, которые могут загружаться:

Если вы захотите узнать, каков лимит для вашего сайта, вы можете зайти в раздел «Медиафайлы » — «Добавить новый ». Ниже в поле загрузки вы увидите надпись «Максимальный размер загружаемого файла » с числом рядом с ней в мегабайтах. Это число показывает, насколько большие файлы вы можете загрузить на свой сайт.

По умолчанию ограничение на размер загружаемых файлов установлено в пределах от 2 Мб до 128 Мб. Если в данный момент у вас установлен минимально возможный предел, то вы можете повысить его и получить возможность загружать большие медиа файлы.

К сожалению, для увеличения этого лимита недостаточно просто изменить это значение по умолчанию. То, насколько большие файлы вы сможете загружать на сайт, также зависит от настроек вашего сервера.

В конце концов, вам, возможно, придется поменять несколько вещей, прежде чем все заработает, как вам нужно. В этой статье мы шаг за шагом разберем все настройки, которые вам придется произвести, чтобы получить работающее решение.

Для большинства действий, которые потребуются, вам будет нужен доступ к сайту по FTP .

Настройка инфо файла PHP

Прежде чем начать пробовать различные решения, следует получить некоторые сведения о том, как настроен на вашем сайте PHP . К счастью PHP имеет простую функцию, которая поможет сделать это. Создайте в любом текстовом редакторе новый файл и добавьте в него следующую строку кода:

Назовите файл «info.php » и сохраните его. После этого перейдите по FTP в корневую папку вашего сервера, в которой установлен WordPress , и перетащите в нее файл info.php . Затем, перейдите по адресу «http://yoursite.com/info.php «, где «yoursite.com » заменяется фактическим URL -адресом вашего сайта. В результате вы получите полный список элементов конфигурации PHP :


Особое внимание обратите на версию PHP

Здесь очень много информации, но большую ее часть вы можете игнорировать. Самая важная часть этого файла — какая версия PHP у вас в данный момент работает. Это будет указано в верхней части печатными буквами, например “PHP Version 5.4.16 «.

Самое важное — это первые числа номера версии. Это может быть либо PHP 4 , либо PHP 5 . Некоторые советы, изложенные здесь, потребуют, чтобы вы знали, какая версия у вас установлена, так что примите это к сведению.

Есть еще три настройки в инфо файле PHP , которые имеют отношение к теме нашей статьи. Вам нужно просмотреть данный файл, чтобы выяснить, какие значения для них на данный момент установлены.

memory_limit — определяет, сколько памяти выделяется на PHP . Вы просто должны убедиться, что это число равно или превышает лимит загрузки, который вы хотите установить.

post_max_size — определяет максимальный размер, который обрабатывается в запросе POST . Для этой настройки нам нужно будет установить значение нашего нового лимита загрузки.

upload_max_filesize — определяет максимально возможный размер загружаемого файла. Для этой настройки нам также нужно будет установить значение нашего нового лимита загрузки.

Теперь, когда у нас есть немного информации о конфигурации PHP , мы можем попробовать несколько различных методов увеличения лимита на размер загружаемых файлов.

Редактирование php.ini

Если вы зададите на поиск через Google способы повышения лимита загрузки в WordPress , вы, вероятно, получите разнообразные варианты решений.

Большинство из них — это обходные пути, но самый лучший способ увеличить лимит размера загружаемых файлов — это внести изменения в файл php.ini вашего сервера. php.ini файл содержит все элементы конфигурации РНР , и через него вы можете изменить значения, которые вы видели на странице информации о конфигурации PHP .

Примечание: Перед тем, как начать вносить изменения в конфигурацию сервера, вы должны сделать резервную копию вашего сайта и базы данных. Если вам удалось найти файл php.ini, вам также нужно отдельно создать резервную копию этого файла.

В зависимости от настроек вашего хостинга, вы можете получить возможность редактировать файл php.ini непосредственно. Чтобы найти этот файл, зайдите по FTP на свой сайт, и перейдите в папку, где установлен WordPress . Как правило, это папка “html ” или “www ”. Отсюда по FTP вам нужно перейти в верхнюю корневую папку. Это, как правило, папка на один или два уровня выше, чем та, где установлен WordPress.

Из корневой директории вашего сервера вы начинаете поиск папки, где размещен файл php.ini . Как правило, это папка “conf ” или “etc ”. Поищите файл «php.ini » в этих папках. Если найти его не удалось, обратитесь к справочным материалам вашего хостинга. Перетащите этот файл в какое-нибудь место на локальном жестком диске и откройте его в любом текстовом редакторе.

Нам нужно будет изменить в этом файле несколько значений, так что вам нужно будет производить поиск по файлу. Для демонстрации я хочу увеличить свой лимит загрузки до 64 МБ. Вы можете установить его выше, однако не рекомендуется устанавливать новое значение больше, чем 128 Мб:


Фрагмент содержимого из файла php.ini

Во-первых, найдите значение параметра «memory_limit » и измените его на 64M (если оно уже не установлено на 64M или больше ). Далее, найдите параметр «post_max_size » и измените его значение на 64M. Наконец, найдите «upload_max_filesize » и снова измените его значение на 64M. Важно при определении лимита использовать обозначение «M», а не обычно используемое MB.

Вы также можете найти переменную «max_execution_time » и установить для нее значение что-то вроде 300. Это гарантирует, что ваш сайт не даст сбой при загрузке больших файлов.

В конечном итоге ваши значения будут выглядеть следующим образом:

memory_limit = 64M upload_max_filesize = 64M post_max_size = 64M max_execution_time = 300

Только эти значения будут разбросаны по всему файлу. Когда вы закончите, сохраните файл и перетащите его обратно в папку, где находится ваш файл php.ini и перезапишите существующий файл. Пока эти изменения вступят в силу, может пройти некоторое время. Если вы используете выделенный сервер и имеете соответствующие права, попробуйте перезагрузить сервер.

Если вы не знаете точно, как перезагрузить сервер, проконсультируйтесь со службой поддержки вашего хостинг-провайдера. В противном случае, убедитесь, что кэш вашего браузера и сайта очищен. И будем надеяться, что, когда вы снова перейдете в раздел Медиафайлы — Добавить новый , вы увидите, что там уже прописан новый максимальный размер загружаемого файла. Значит наша цель достигнута.

Загрузка собственного файла php.ini

Если вы не можете найти файл php.ini или не имеете к нему доступа, вы сможете загрузить свой файл, чтобы переопределить параметры по умолчанию. Чтобы сделать это, создайте новый файл и откройте его в текстовом редакторе. Затем вставьте в него следующий код:

memory_limit = 64M upload_max_filesize = 64M post_max_size = 64M file_uploads = On max_execution_time = 300

Опять-таки, я устанавливаю лимит загрузки 64MB, но вы можете установить значение, которое нужно вам.

Помните, выше я упоминал о необходимости знать версию PHP ? Если вы работаете на PHP версии 4, то сохраняйте это файл, как «php.ini «. Если на PHP версии 5, сохраняйте его, как «php5.ini «. Если случится, что вы работаете на версии 5, но приведенное выше имя файла не работает, вы можете переименовать файл в «php.ini » и загрузить его снова:


Файл php.ini в FTP-клиенте Cyberduck

После этого снова перейдите по FTP на ваш сайт и найдите корневую папку, где размещаются файлы WordPress . Перетащите файл в эту папку.

Опять же, если у вас есть возможность перезагрузить сервер вы должны это сделать, а затем очистите кэш браузера и сайта. Чтобы удостовериться, действительно ли работает этот метод, перейдите в раздел Медиафайлы -> Добавить новый , и, если максимально возможный размер файла увеличился, значит все в порядке.

Использование файла.user.ini

Если приведенный выше метод не сработал, вы можете использовать другой вариант. Он будет работать, только если вы используете PHP версии 5. В противном случае, вы можете пропустить этот раздел.

Создайте новый файл и на этот раз назовите его «.user.ini «. В этот файл вставьте следующий код:

upload_max_filesize = 64M post_max_size = 64M memory_limit = 64M max_execution_time = 300

Вы можете изменить значение 64M на то, что вам нужно. Сохраните этот файл, а затем перетащите его в папку, где у вас установлен WordPress . Если у вас есть возможность перезагрузить сервер, сделайте это. Изменения могут вступить в силу через некоторое время. Подождите немного, после чего перейдите в раздел Медиафайлы -> Добавить новый .

Возможно, вам подойдет решение с помощью.htaccess

Если вы перепробовали все методы, связанные с php.ini , и ни одно из них вам не подошло, возможно, решение проблемы заключается в использовании файла .htaccess . В общем, .htaccess используется для настройки сервера Apache . Тем не менее, этот файл также может быть использован для изменения значений PHP , если ваша версия PHP установлена, как модуль Apache .

Перед тем, как редактировать файл .htaccess , убедитесь, что у вас есть резервная копия его текущей версии. Изменения в этом файле могут привести к внутренним ошибкам сервера или вы вообще увидите пустой экран. Данные ошибки легко исправить — достаточно всего лишь перезагрузить файл .htaccess .

Чтобы получить доступ к этому файлу, перейдите в корневую папку WordPress . Убедитесь, что в вашем FTP -клиенте включена возможность просмотра скрытых файлов, после чего откройте файл «.htaccess «. В нижней части файла вставьте следующий код:

php_value upload_max_filesize 64M php_value post_max_size 64M php_value max_execution_time 300 php_value max_input_time 300

Затем сохраните изменения на сервере. Перейдите на свой сайт и проверьте, не возникли ли какие-либо ошибки с отображением контента. После этого вы можете перейти в раздел панели администрирования Медиафайлы -> Добавить новый , чтобы посмотреть, вступили ли в силу изменения лимита загрузки.

Если вы столкнулись с какими-нибудь проблемами с отображением сайта, загрузите файл резервной копии .htaccess , который вы сохранили ранее на диске.

Конфигурационный файл WordPress

Если ничего из этого не помогло, есть еще одна возможность, которую Вы можете использовать. Для этого потребуется напрямую редактировать файлы WordPress .

Первым делом зайдите через FTP на сервер и перетащите файл «WP-config.php «, расположенный в корневой папке, на свой компьютер, чтобы вы могли его редактировать. Откройте файл и внизу добавьте следующую строку:

define("WP_MEMORY_LIMIT", "64M");

Затем загрузите этот файл обратно на сервер.

Перейдите в папку активной темы и перетащите на компьютер файл «functions.php «, чтобы его можно было редактировать. Откройте файл и в самом верху добавьте:

@ini_set("upload_max_size" , "64M"); @ini_set("post_max_size", "64M"); @ini_set("max_execution_time", "300");

Это делает возможным редактирование файла php.ini вашего сервера во время выполнения. Исторически так сложилось, что это наиболее эффективное решение. Очистите кэш браузера и сайта, и перейдите в раздел Медиафайлы -> Добавить новый , чтобы посмотреть, вступил ли в силу новый лимит.

Обращение за помощью к поддержке хостинг-провайдера

Если ни один из вышеперечисленных способов не сработал, вы можете обратиться к службе поддержки вашего хостинг — провайдера. Скажите, что вы хотите увеличить значения «memory_limit «, «upload_max_size » и «post_max_size » в файле php.ini .

Большинство хостеров сделают это для вас без проблем. Если они не позволяют вам этого сделать, либо же вообще не отвечают, возможно, пришло время поискать новый хостинг.

Увеличение лимита загрузки на MAMP

Бывает, вы разрабатываете свой сайт локально и хотите увеличить свой лимит на локальном сервере. Если вы работаете на Mac , вы можете использовать MAMP , локальный сервер, который дает доступ к Apache, MySQL и PHP . Другими словами, всему, что нужно для запуска WordPress .

PHP - это один из самых популярных языков программирования для создания сайтов и веб-приложений. На нем разработано множество готовых систем управления контентом для блогов, сайтов фирм или даже интернет-магазинов. Несмотря на то что у этого языка есть свои недостатки, он достаточно прост в освоении и поэтому очень часто используется для разработки новых сайтов.

Интерпретатор php может поставляться в виде модуля для Apache, выполнять скрипты из командной строки или в виде отдельного сервиса php-fpm. Эти сервисы отличаются своими возможностями, и предназначением, но для любого вида интерпретатора нужно задать базовые настройки, например, рабочая папка, включенные расширения, отображение ошибок и так далее. Все эти настройки задаются через файл php.ini. В этой инструкции мы рассмотрим как выполняется настройка файла php.ini в операционных системах Linux, хотя все информация подойдет и для Windows.

Если у вас еще не установлен интерпретатор языка программирования php, то вы можете ознакомиться со статьей .

Для каждой версии интерпретатора конфигурационный файл php.ini находится в отдельной папке. Но все конфигурационные файлы находятся в папке /etc/php, например, /etc/php5:

Папка conf.d содержит общие настройки для различных расширений и модулей, они не будут нас сейчас интересовать. Более интересны следующие три папки - apache, cli и fpm. В них содержатся конфигурационные файлы php.ini для каждого из этих интерпретаторов.

Если вы собираетесь использовать несколько из этих интерпретаторов, то вам придется указывать настройки для каждого из них отдельно. Вы можете убедиться, что в каждой из папок лежит файл php.ini.

Что касается синтаксиса файла, то он разделен на секции, сначала идет секция настройки php, которая разделена на подсекции в зависимости от типа настроек, дальше идут секции настройки разных модулей. Синтаксис самих настроек очень прост, он соответствует привычному синтаксису ini файлов. Строка начинается с имени настройки, затем следует знак равно, а за ним значение:

имя_настройки = значение_параметра

Символами обозначается имя секции, например, , а символ; означает комментарий, он и все символы после него не читаются интерпретатором. А теперь рассмотрим как выполняется настройка php.ini и переберем самые важные параметры.

Настройка файла php.ini

Для удобства ориентирования мы разобьем все параметры по категориях в зависимости от их назначения. Вам будет достаточно найти нужный параметр и изменить его значение. А теперь откройте файл настроек php, например, для модуля apache и перейдем к настройке. Чтобы избежать ошибок не добавляйте новые строки, а ищите уже существующие и изменяйте значения на нужные:

sudo gedit /etc/php5/apache/php.ini

Сначала идет немного информации о самом файле в виде комментариев, затем интересующие нас настройки.

Вывод ошибок в php

Настройка php 7 обычно начинается с конфигурации вывода ошибок. Все настройки вывода ошибок находятся в разделе Error handling and logging. По умолчанию вывод ошибок на экран во время выполнения скрипта отключен. Это сделано для того, чтобы пользователи не смогли увидеть ничего лишнего. Вместо этого, все ошибки записываются в лог файл. Если вы используете php на домашнем компьютере, то такие меры не нужны и вы можете сразу выводить все на экран:

display_errors=off

Замените off на on. В php используются различные типы ошибок, например, критические, предупреждения, ошибки синтаксиса, с помощью строки error_reporting вы можете включить вывод только определенных типов ошибок:

error_reporting = E_ALL & ~E_DEPRECATED

Если нужно объединить несколько типов ошибок, то используйте символ &, а для отключения отображения поставьте перед типом знак ~. Приведенный выше пример отображает все ошибки (E_ALL), кроме сообщений об устаревших функциях (E_DEPRECATED). Вы можете отключить все типы использовав 0:

error_reporting = 0

Включите запись ошибок php в лог файл, если не выводите их на экран:

Чтобы не засорять лог однотипными сообщениями можно игнорировать повторяющиеся ошибки в пределах одного исполнения:

ignore_repeated_errors = On

Ограничения ресурсов

Если бы скрипты php никак не ограничивались в ресурсах, то они запросто могли бы перегрузить сервер и не дать ему нормально работать. Поэтому, по умолчанию php устанавливает жесткие ограничения, но, возможно, вам нужно будет их немного ослабить.

По умолчанию максимальное время выполнения скрипта - 30 секунд, сделаем минуту:

max_execution_time = 30

Если указать 0, то скрипт может выполняться бесконечно. Вы также можете ограничить время, на протяжении которого скрипт будет загружать данные, 60 секунд:

max_input_time=60

Максимальное количество переменных в GET и POST:

max_input_vars = 1000

Следующий параметр задает максимальное количество памяти, которую может использовать один скрипт во время своего выполнения, в мегабайтах:

memory_limit = 128M

Максимальный размер данных, передаваемых в POST запросе тоже ограничивается, размер по умолчанию - 8 Мегабайт:

post_max_size = 8M

Вы можете ограничить область действия php в системе с помощью опции openbase_dir, она указывает папку, выше которой скрипт не может получить доступ к файловой системе:

open_basedir = /var/www/

С помощью директив disable_functions и disable_classes вы можете отключить использование в скриптах определенных функций или классов, например, это может быть полезно для веб-хостингов. В этом примере мы отключаем использование функции ini_set, которая позволяет менять настройки php из скрипта:

disable_functions = ini_set

Директории по умолчанию

Файл настройки php.ini позволяет указать пути в файловой системе по умолчанию для различных действий. Вы можете задать папки где система будет искать скрипты, если вы попытаетесь подключить их с помощью инструкции include:

include_path = ".:/usr/share/php5:/usr/share/php5/PEAR"

Папка с модулями php:

extension_dir="./"

Папка для записи временных файлов:

sys_temp_dir = "/tmp"

Для того чтобы пользователи могли загружать свои файлы на сервер, например, фото, нужно включить эту функцию в php:

file_uploads = On

Максимальный размер загружаемого файла:

upload_max_filesize = 2M

Максимальное количество файлов, которые может загрузить один скрипт:

max_file_uploads = 20

Настройка php.ini практически завершена, нам остались лишь расширения.

Настройка расширений

Расширения позволяют очень сильно увеличить функциональность php. Например, благодаря расширениям вы можете использовать в своих скриптах базы данных mysql, postgresql, mysqli, sqlite, графическую библиотеку gd и многое другое. Все это включается в этом разделе.

Для включения расширения достаточно убрать комментарий перед строкой с его командой, например:

extension=php_mysql.so
extension=php_mbstring.so
extension=php_pgsql.so

Обратите внимание, что для windows расширение будет иметь формат dll, но для linux нужно использовать so. В следующих секциях идет настройка каждого из расширений, но мы их рассматривать не будем потому что они обычно не требуют настройки.

Выводы

В этой статье мы рассмотрели как выполняется настройка php на сервере или обычном компьютере для разработки веб-сайтов. Файл настроек php имеет довольно простую структуру и с ним довольно не сложно справиться. После завершения всех настроек и сохранения изменений не забудьте перезагрузить веб-сервер или сервис php-fpm.

Вообще говоря, php-fpm это отдельная тема, потому что там есть много дополнительных настроек, и, возможно, мы рассмотрим его в одной из следующих статей. Если у вас остались вопросы, спрашивайте в комментариях!

Для устранения некоторых проблем при работе веб-сайта требуется изменять значения параметров в конфигурации PHP. Сделать это можно двумя способами:

  1. Изменить значение параметра в конфигурационном файле php.ini . После редактирования файла необходимо перезапустить веб-сервер, чтобы изменения вступили в силу. Доступ к файлу php.ini , как правило, имеет только администратор сервера. Пользователи виртуального хостинга обычно не имеют возможности редактировать этот файл и могут воспользоваться вторым способом.
  2. Переопределить значение параметра в файле .htaccess . Основные правила формирования файла .htaccess таковы:
    • если параметр может иметь только значения On или Off (либо 1 или 0 ), то в файл .htaccess следует добавить строку следующего вида: php_flag

      Например:

      Php_flag display_errors 1

      display_errors , short_open_tags , log_errors .

    • в остальных случаях строка в файле .htaccess должна иметь вид php_value ИМЯ_ПАРАМЕТРА ЗНАЧЕНИЕ_ПАРАМЕТРА

      Например:

      Php_value memory_limit 64M

      Примеры параметров, значения которых можно изменять таким образом: memory_limit , post_max_size , max_execution_time .

Внимание : переопределение параметров конфигурации PHP с помощью файла .htaccess может быть запрещено на вашем сервере. Например, такие файлы не учитываются веб-сервером IIS, а также веб-сервером Apache при использовании PHP в качестве CGI. Для изменения параметров на таких серверах необходимо либо самостоятельно редактировать файл php.ini , либо обратиться к системному администратору.
  • В каких файлах хранятся параметры подключения к базе данных?
  • Как изменить параметр в конфигурации PHP?