Прямая ссылка: php-5.3.10-Win32-VC9-x86.zip
Заодно скачайте сразу и документацию на русском языке в формате.chm, она вам понадобится при изучении и работе: php_enhanced_ru.chm
Распакуйте архив в желаемый каталог (изначально предлагается "C:\php"). Откройте конфигурационный файл содержащий рекомендуемые настройки - "php.ini-development" (находящийся в корне дистрибутива), переименуйте его в php.ini и произведите следующие изменения.
Редакция php.ini:
- Найдите строку:
post_max_size = 8M
Увеличьте до 16 Мбайт максимальный размер данных принимаемых методом POST, изменив ее на:
post_max_size = 16M - Найдите строку:
;include_path = ".;c:\php\includes"
Раскомментируйте ее, убрав перед строкой символ точки с запятой.
(Внимание исключение! Обратные косые черты при указании пути):
include_path = ".;c:\php\includes"
Создайте пустой каталог "C:\php\includes", для хранения подключаемых классов. - Найдите строку:
extension_dir = "./"
Установите значением данной директивы путь к папке с расширениями:
extension_dir = "C:/php/ext" - Найдите строку:
;upload_tmp_dir =
Раскомментируйте ее и укажите в значении следующий путь:
upload_tmp_dir = "C:/php/upload"
Создайте пустую папку "C:\php\upload", для хранения временных файлов загружаемых через HTTP. - Найдите строку:
upload_max_filesize = 2M
Увеличьте максимально допустимый размер загружаемых файлов до 16 Мбайт:
upload_max_filesize = 16M - Подключите, расскомментировав, данные библиотеки расширений:
extension=php_bz2.dll
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_mysqli.dll - Найдите строку:
;date.timezone =
Раскомментируйте и установите значением часовой пояс вашего местоположения (список часовых поясов можно найти в документации):
date.timezone = "Europe/Moscow" - Найдите строку:
;session.save_path = "/tmp"
Раскомментируйте и установите значением данной директивы такой путь:
session.save_path = "C:/php/tmp"
Создайте пустую папку "C:\php\tmp" для хранения временных файлов сессий.
Далее необходимо добавить каталог с установленным 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.
« |
INI-файлы - это обычные текстовые файлы, состоящие из определённых секций. Как правило, INI-файлы используются для сохранения определённых настроек, например, настроек языка. И, разумеется, чтобы наш сайт мог легко изменяться тем или иным образом, можно все параметры, отвечающие за это изменение, поместить в отдельный файл. И как быстро извлечь в PHP из этого файла все настройки мы и разберём в этой статье.
Для чтения INI-файла в PHP используется функция parse_ini_file() . Но прежде, чем её использовать, создадим INI-файл "settings.ini ":
Par1=10
Par2=20
В этом файле мы описали два параметра и присвоили им определённые значения. А теперь создадим PHP-файл , в котором считаем данные из созданного файла с помощью функции parse_ini_file() :
$arr = parse_ini_file("settings.ini");
print_r($arr);
?>
В результате, Вы увидите следующую строку: "Array ( => 10 => 20) ". Как видите, функция parse_ini_file() вернула массив с ключами в виде названия параметров и значениями в виде тех, что мы задавали в файле "settings.ini ".
Теперь разберём пример из реальной практики. Сделаем одну страничку, которая будет выводить текст на языке, заданным GET-параметром . Для начала создадим INI-файл "lang_en.ini ":
HELLO=Hello
WORLD=world
Теперь создадим PHP-скрипт :
$lang = isset($_GET["lang"])? $_GET["lang"]: "en";
$langconst = parse_ini_file("lang_$lang.ini");
echo $langconst["HELLO"]." ".$langconst["WORLD"]."!";
?>
Первой строкой мы проверяем: если был передан GET-параметр lang , то тогда считываем оттуда значение и записываем в переменную lang . А если никакого значения передано не было, то устанавливаем значение по умолчанию, в нашем случае: "en ". Дальше мы обращаемся к файлу нужного языка и вытаскиваем оттуда данные. Затем уже просто выводим строку, используя полученные языковые константы . В результате, мы увидим: "Hello World! ".
А теперь пришла пора доказать, почему это так удобно. Для того, чтобы добавить новый язык достаточно создать лишь ещё один файл, где перевести все языковые константы:
HELLO=Привет
WORLD=мир
Сохраните данный файл под названием "lang_ru.ini ", и запустите скрипт: "адрес_скрипта.php?lang=ru ". В результате, Вы увидите: "Привет мир!".
Как видите, мы создали лишь ещё один INI-файл , перевели константы на нужный язык и всё! Таким образом, Вы легко можете создать несколько языковых версий Вашего сайта, что смотрится очень здорово, а, главное, реализация этого достаточно простая.
А сегодня мы поговорим об установке PHP . Как и в случае с Apache здесь нет ничего сложного. Если вы первый раз занимаетестьустановкой и настройкой PHP на локальной машине, то вам будет полезно прочитать это руководство с картинками. Если вы уже матерый зубр в этих делах, то можете смело пропустить эту заметку.
Итак, если вы читаете этот пост, то либо вы первый раз устанавливаете PHP, либо у вас возникли вопросы/проблемы в процессе установки или настройки PHP. Я постараюсь как можно подробнее описать этот процесс.
Для начала нам нужен дистрибутив с самой свежей версией PHP. Его можно скачать с официального сайта – www.php.net (9.5 Mb).
Скачиваем дистрибутив на компьютер, выбирая зеркало, которое географически наиболее ближе к вам находиться
Извлекаем содержимое архива в папку C:/php5 . Опять же, если вы первый раз устанавливаете связку Apache -PHP- MySQL рекомендую устанавливать по указанным мной путям.
Итак, в C:/php5 у вас должно находиться следующее:
Установка PHP завершена, теперь займемся его настройкой.
Переименуйте файл php.ini-recommended в php.ini :
- выбираем файл
- нажимаем F2
- удаляем -recommended
- нажимаем Enter.
Теперь откроем файл в блокноте и займемся настройкой PHP . Файл содержит в себе довольно большое количество настроек PHP, но нам они сейчас не нужны. Мы займемся лишь базовой настройкой, которая позволит нам запустить PHP на локальной машине.
Немного о формате описания в файле настроек
Символ ‘;’ означает, что строки закоментированы (они не будут учитываться). Например:
; ignore_user_abort = On
Как вы могли заметить настройки поделены на группы, для удобства поиска по файлу. Например, настройки управления ограничением ресурсов:
;;;;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;;;;max_execution_time = 30 ; Maximum execution time of each script, in seconds (Максимальное время выполнения скрипта).
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
;max_input_nesting_level = 64 ; Maximum input variable nesting level
memory_limit = 128M ; Maximum amount of memory a script may consume (128MB) (Максимальное количество выделяемой для скрипта памяти).
Формат описания параметров и их значений:
имя_переменной = ее_значение
Настройка модулей PHP.
Найдите секцию Dynamic Extensions (динамические расширения). Там представлен довольно большой список модулей для PHP:
;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_ifx.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
;extension=php_mbstring.dll
;extension=php_mcrypt.dll
;extension=php_mhash.dll
;extension=php_ming.dll
;extension=php_msql.dll
;extension=php_mssql.dll
;extension=php_mysql.dll
;extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_openssl.dll
;extension=php_pdo.dll
;extension=php_pdo_mssql.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_oci8.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
;extension=php_pgsql.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
;extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll
При подключении каждого модуля, он занимает определенное количество операционной памяти. Для работы мы подключим только те модули, которые нам точно понадобятся, а остальные, можно будет подключить по мере необходимости.
Для того чтобы подключить модуль нужно удалить перед строкой символ ‘;’. Тем самым мы раскомментируем строку и модуль будет использоваться.
Давайте подключим расширение PHP для работы с графикой – php_gd2.dll (оно нам понадобиться в будущем).
Для того, чтобы PHP смог найти, где лежат расширения, укажем путь к ним. Добавьте следующую строку до или после подключения расширений. В итоге у вас должно получиться следующее:
;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
;
; If you wish to have an extension loaded automatically, use the following
; syntax:
;
; extension=modulename.extension
;
; For example, on Windows:
;
; extension=msql.dll
;
; … or under UNIX:
;
; extension=msql.so
;
; Note that it should be the name of the module only; no directory information
; needs to go here. Specify the location of the extension with the
; extension_dir directive above.; Windows Extensions
; Note that ODBC support is built in, so no dll is needed for it.
; Note that many DLL files are located in the extensions/ (PHP 4) ext/ (PHP 5)
; extension folders as well as the separate PECL DLL download (PHP 5).
; Be sure to appropriately set the extension_dir directive.extension_dir=”C:/php5/ext”
;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_exif.dll
;extension=php_fdf.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_ifx.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
;extension=php_mbstring.dll
;extension=php_mcrypt.dll
;extension=php_mhash.dll
;extension=php_mime_magic.dll
;extension=php_ming.dll
;extension=php_msql.dll
;extension=php_mssql.dll
;extension=php_mysql.dll
;extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_openssl.dll
;extension=php_pdo.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_oci8.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
;extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
;extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll
;extension=php_zip.dll
Сохраняем сделанные нами изменения. Чтобы сделанные нами настройки применились необходимо перезагрузить Apache .
Установка и настройка PHP завершена!
Как видите – ничего сложного. Если в процессе работы вам понадобятся другие расширения, просто раскомментируйте строку, с нужным вам расширением (аналогично с php_gd2.dll ) и перезагрузите Apache .
В следующем посте, я расскажу как заставить работать PHP и Apache в связке.
Здравствуйте, мои дорогие читатели! Очень надеюсь, что сегодняшняя статья будет полезной не только неопытным пользователям сети, но и бывалым юзерам, которые запутались в особенностях различных хостинговых систем.
Хочу рассказать, как настроить php на . В целом процесс настройки представляет собой корректировку данных в системном файле php.ini.
Основные понятия
Рhp.ini – файловый документ, в котором находятся директивы (конфигурация и настройки), которые определяют поведение PHP (в частности конкретного сайта).
Интерпретатор – программа, которая построчно читает и выполняет программный код. Сначала ищет настройки в рhp.ini. А потом переходит в саму директорию, указанную в текстовой переменой PHP RС.
После ручного редактирования любого php-файла важно не забыть оставить его название неизменным, иначе интерпретатор не сможет его найти!
Данная информация сугубо обобщённая, на практике должно быть понятнее.
Выбираем один из вариантов
Вариант №1 для тех, кто использует в качестве административной панели сРаnel.
Ищите в меню раздел «Конфигурация», в котором опубликованы параметры РНР для хостинга.
Здесь даже можно изменить версию РНР. Есть провайдеры, которые дают практически неограниченные возможности пользователям для самостоятельной наладки, но есть и такие, которые очень строго контролируют любые изменения, и без их ведома нельзя действовать.
Если ваш хостинг позволяет осуществлять наладку php, тогда вы – счастливчик. Если нет, тогда переходим к варианту №2 – обратиться за помощью в службу технической поддержки.
Пошаговая инструкция или переопределяем рhр.ini на свой лад
Находим оригинальный файл настроек.htaccess и прописываем в него следующие данные:
chmod 755 php5.fcgi
Ну вот и все, пользуемся.
К данной пошаговой инструкции имеются некоторые уточнения. При создании файла php5.fcgi следует применять текущие настройки unix (разрыв строки), то есть прописывать в файле информацию с тегом /n. И в случае возникновения ошибки 500 следует проверить файл php-error.log, в котором скорее всего и найдете проблему.
Важными являются еще пара настроек:
disable_functions – позволяет блокировать вызов нескольких функций в рамках безопасного режима.
Примечание ! Список таких функций пользователь указывает самостоятельно через запятую;
memory_limit – позволяет осуществить настройку параметров максимального объема памяти, нужного для выполнения скриптов.
Ну и напоследок добавлю: для того чтобы посмотреть настройки и узнать версию PHP, нужно создать php-файл (название не имеет значения), в котором следует прописать следующий код:
Вот и все, дерзайте! Не забудьте рассказать друзьям в соц. сетях о новом, прочтенном вами материале, и подписаться на рассылку уведомлений о редакции следующей статьи. До встречи!
C уважением! Абдуллин Руслан
Создание и использование собственного файла php.ini
Любой пользователей может создать собственный файл php.ini и разместить его в папке вызываемого срипта.
Это довольно удобно, так как Вы можете самостоятельно редактировать свои настройки, без обращения в службу тех. поддержки
Если Вы решили положить php.ini где то в public_html, то создайте файл.htaccess в корневой папке сайта (например /home/user/public_html ,где user ваш никнейм в cpanel) или если файл существует то только добавьте в любом месте (в начале или конце) в файл.htaccess директивы которые описанны ниже.
order allow,deny
deny from all
эти директивы запрещают просмотра файла php.ini посторонними.
При такой установке PHP в виде обработчика CGI, SuPHP, Вы не можете использовать в файле.htaccess следующие директивы: php_flag, php_admin_flag, php_value и прочих, которые изменяют какие-либо параметры PHP окружения это вызовет ошибку с кодом 500, Internal Server Error.
Внимание: собственный файл php.ini действителен только в пределах директории, в которой размещён, если не указана специальная опция, см. ниже.
suPHP_ConfigPath /home/user/public_html
т.е. в пишите эту строку в файл.htaccess перед кодом запрета просмотра файла php.ini, только замените user на свое имя пользователя.
Права доступа на файлы и папки:
644 - запись в файл разрешена (по умолчанию)
444 - запись в файл запрещена (только чтение и исполнение)
755 - права доступа на папки (по умолчанию, менять не требуется)
Обратите внимание - при правах доступа 644 запись разрешена только для скриптов которые запускаются в среде Вашего аккаунта. Никто другой запись произвести не сможет. Для ещё большего увлечения безопасности Вы можете сменить права доступа у файлов на 444 - в этом случае даже Ваши скрипты не смогут ничего записать в файлы, но это не обязательно.
Таким образом при установке скриптов не требуется менять права доступа, даже если в инструкции к скрипту написано что их нужно изменить. Просто пропускайте пункт смены прав доступа CHMOD.
Пример файла php.ini и описание некоторых его параметров:
; Синтаксис файла: "директива = значение"
; Знак комментария в php.ini - ";" (точка с запятой). Все, что находится в строке после ";" не воспринимается PHP
safe_mode = Off
disable_functions = ; В целях безопасности, позволяет запретить выполнение указаных функций
max_execution_time = 30 ; Максимальное кол-во секунд исполнения скрипта
memory_limit = 16M ; Максимум оперативной памяти, которую может взять себе скрипт
error_reporting = E_ALL & ~E_NOTICE ; Показывать все ошибки, кроме замечаний
display_errors = On ; Вывод ошибок в браузер. Для облегчения отладки сценариев
variables_order = "EGPCS" ; Порядок, в котором PHP будет регистрировать перменные (E - встроенные переменные, G - GET переменные, P - POST переменные, C - Cookies, S - сессии). Отсутствие какой-либо из букв не позволит вам работать с соответствующими переменными
register_globals = On ; Возможность обращения к переменным, поступающим через GET/POST/Cookie/сессии, как к обычным переменным (например, "$переменная")
post_max_size = 55M ; Максимальный объём данных который может быть принят
magic_quotes_gpc = On ; Включение автоматической обработки кавычек, поступающих через POST/GET/Cookie
file_uploads = On ; Разрешает загрузку файлов
;upload_tmp_dir = ; Каталог для временных закачанных файлов (не забудте создать этот каталог!)
upload_max_filesize = 5M ; Максимальный размер закачиваемого файла
session.save_handler = files ; Хранить данные сессий в файлах
session.save_path = /tmp ; Папка для хранения файлов сессий (не забудте создать этот каталог!)
session.use_cookies = 1 ; Использовать cookie в сессиях
session.name = PHPSESSID ; Исользовать в качестве имени сессии и сессионной cookie ID сессии
session.cookie_lifetime = 0 ; Время жизни сессионных cookie ("0" - до закрытия окна браузера)
session.use_trans_sid = 1 ; ID сессии будут добавляться ко всем ссылкам на странице автоматически (если у пользователя отключены cookie)
; и много других параметров...
Внимание!: Данная информация не актуальна для наших серверов, управлять PHP.ini, т.е. настройками PHP и версией PHP, вы можете в CPanel в раздлеле Select PHP version (Выбор PHP версии)