Windows 7 установка php. Как проверить, установлен ли PHP. Дополнительные настройки php

На PHP написано много хороших приложений. Даже нет,
очень много и некоторые из них очень хорошие, так почему бы не использовать эти
приложения на Windows? Особенно, если внутренний портал работает на Windows, а
на Unix машине крутиться внешний сайт компании - тогда
можно сэкономить на инфраструктуре и разместить на Windows
сервере еще и внешний сайт. Либо, если есть желание стандартизировать
инфраструктуру и размещать сайты на Windows
платформе, поскольку разработчики и пользователи работают на
Windows платформе.
На сайте www.iis.net
можно найти
список
популярных PHP приложений
с инструкциями по установке на IIS. Для их запуска
на IIS не требуется изменения
PHP кода.

Установка и настройка PHP для использования с модулем FastCGI.

Для начала, чтобы успешно использовать PHP на
Windows, неплохо было бы PHP
установить.
Шаг 1. Скачать PHP
На сайте PHP.net нужно скачать
последную версию PHP для Windows . Для использования с FastCGI рекомендуется
устанавливать версию PHP без контроля безопасности потоков, поскольку сам модуль
FastCGI гарантирует, что выполнение происходит в одном потоке и поддержка
контроля безопасности потоков в самом PHP привносит лишние проверки и
блокировки, приводящие к значительному падению производительности. Поэтому
выбираем Non-thread-safe Win32 binaries (версия 5.2.6 актуальна на момент написания
этого сообщения).
Стоит отметить, что веряим Non-thread-safe была разработана специально для
работы с FastCGI на IIS (первый релиз был в версии 5.2.1) и использовать в
других средах не рекомендуется. Кстати, начиная с версии 5.2.2 Zend серьезно
работает над оптимизацией производительности PHP под Windows, что не может не
радовать. Если сравнить версии 5.2.1 и 5.2.2, то разницу в скорости обработки
запросов можно легко увидеть с помощью простого нагрузочного теста.
Шаг 2. Установка PHP
Установка осуществляется совсем просто: поскольку мы скачали архив с
исполнимыми файлами, достаточно развернуть этот архив, например, в
директорию C:\Web\PHP.
В качестве базовой конфигурации воспользуемся рекомендованными установками:
cделаем копию файла php.ini-recommended в php.ini в этой же директории и откроем
его для редактирования, после чего пройдем файл сверху расскоментируя следующие
строки, дабы обеспечить безопасность и совместимость с большинством PHP
приложений:
  • open_basedir = директория, где размещены PHP приложения .
    Указание директории ограничит права доступа к файлам PHP приложений только
    этой директорией. Удобно переопределять эту настройку в файлах конфиграции
    непосредственно для каждого приложения, однако не помешает установить эту
    настройку и указать корневую директорию всех PHP приложений. Например, C:\inetpub\PhpSites.
  • cgi.force_redirect = 0
    По умолчанию установлено 1, но необходимо установить в 0, поскольку IIS
    контролирует безопасность выполнения PHP и в этой настройке нет
    необходимости. Более того, включение может привести к неожиданным
    результатам. При использовании с другими web-серверами на Windows эту
    настройку необходимо включить.
  • cgi.fix_pathinfo = 1
    PHP будет устанавливать имя файла в переменной SCRIPT_FILENAME, если
    установить значение 0, то имя файла будет в переменной PATH_TRANSLATED, что
    может нарушить совместимость с большинством приложений.
  • fastcgi.impersonate = 1;
    FastCGI позволяет процессу имперсонироваться используя контекст клиента,
    вызывающего процесс. Этот механизм работает только под FastCGI/IIS, например
    на Apache на Windows это работать не будет.
  • short_open_tag = On
    Большинство приложений используют короткие теги , поэтому будет не
    лишним включить их поддержку.
  • display_errors = On
    На время проверки и отладки PHP приложений на FastCGI стоит включить вывод
    сообщений об ошибках.
Шаг 3. Проверка работоспособности PHP
Пока мы не сконфигурировали IIS, проверить работоспособность интерпретатора
можно просто, например, выполнив команду c:\web\php\php.exe -info > c:\test.txt

Установка и настройка модуля FastCGI на IIS7.

Если у вас у IIS7, то что-то мне подсказывает о названии вашей операционной
системы - Windows Vista? Не угадал, тогда Windows Server 2008! Либо вы хакер и
поставили IIS7 еще-куда-то, но это нестандартное решение и мы его не
поддерживаем;).
Шаг 1. Установка FastCGI
Хочу обрадовать сразу - в IIS7, идущем с Windows Server 2008 и Windows Vista
Service Pack 1 модуль FastCGI уже включен. Его необходимо лишь подключить в
настройках. Для этого на Vista нужно открыть Control Panel -> Programs и выбрать
«Turn Windows Features On or Off»:

После этого необходимо установить фичу в IIS: Internet Information Services
-> World Wide Web Services -> Application Development Features -> CGI. При этом
будет установлена поддержка и CGI и FastCGI.

На Windows Server 2008 процесс аналогичен: Server Manager -> Roles -> Add
Role Services -> Web Server -> Application Development -> CGI.
Собственно все, что требуется для включения модуля FastCGI.
Шаг 2. Конфигурация IIS7
1. Открыть IIS Manager, выбрать узел (сервер) для которого нужно настроить
поддержку PHP. И далее выбрать Handler Mappings.

2. Выбираем на странице Handler Mappings ссылку Add Module Mapping и
заполняем окно следующими значениями:
Request path: *.php (обработка всех файлов с расширением.php)
Module: FastCgiModule (модуль FastCGI)
Executable: C:\Web\PHP\php-cgi.exe (путь к PHP)
Name: PHP (имя для удобства)

После добавления этой настройки появится окно с вопросом о регистрации
FastCGI приложения для этого обработчика. Подтверждаем.
Описанные выше действия привели к созданию в директории PhpSites следующего
web.config файла:


< configuration >
< system.webServer >
< handlers >
< add name =«PHP» path ="*.php" verb ="*"
modules =«FastCgiModule» scriptProcessor ="C:\Web\PHP\php-cgi.exe "
resourceType =«Unspecified» />



Теперь можно переходить к проверке работоспособности PHP.
Шаг 3. Проверяем корректность настройки
В директории узла для которого мы сконфигурировали PHP создаем файл
index.php:
phpinfo();
?>
И обращаемся к этому файлу через HTTP запрос. В результате, если все хорошо и
наша карма не испорчена, запрос будет корректно обработан:

Разумеется, при использовании PHP на
IIS7 могут возникать подводные камни, с которыми нужно
бороться, чтобы достичь ожидаемого результата (замечательной работы
PHP приложений на Windows).
Молотки для разбивания часто встречающихся камней приведены ниже.

Частота перезапуска процессов PHP

Поскольку при использовании PHP на
IIS7 с использованием FastCGI
модуля, сам модуль FastCGI берет на себя
управление процессами и ресурсами, необходимо убедится, что механизм перезапуска
процессов (recycling) в PHP
не будет мешать FastCGI. Это легко сделать, если
настроить FastCGI так, чтобы он всегда перезапускал
процессы раньше, чем это сделает PHP.
В настройках FastCGI существует настройка
instanceMaxRequests, определяющая после обработки какого количества запросов,
процесс будет перезапущен. В PHP аналогичный параметр
задается значением переменной PHP_FCGI_MAX_REQUESTS. Очевидно, чтобы дать
возможность FastCGI рулить процессом, достаточно
установить instanceMaxRequests <= PHP_FCGI_MAX_REQUEST.
Это удобно сделать, отредактировав файл
applicationHost.config (прячется в директории C:\windows\system32\inetsrv\config\).
В конфигурации должна быть следующая информация:

< fastCgi >
< application fullPath ="C:\inetpub\php\php-cgi.exe "
maxInstances =«4» instanceMaxRequests =«10000» >
< environmentVariables >
< environmentVariable name =«PHP_FCGI_MAX_REQUESTS» value =«10000» >


Использование нескольких версий PHP

Поскольку разные версии PHP могут использоваться в
приложениях, которые размещаются на сервере, то хорошо бы было дать возможность
использовать разные версии для разных сайтов.
В файле конфигурации applicationHost.config
достаточно определить секции для разных версий PHP:
< fastCgi >
< application fullPath =«C:\inetpub\php\php-cgi.exe» >
...

< application fullPath =«C:\inetpub\php4\php4.exe» >
...

< application fullPath =«C:\inetpub\php41\php41.exe» >
...


* This source code was highlighted with .
А уже для каждого из сайтов конфигурируется модуль, использующий ту или иную
версию (можно использовать интерфейс, который описан выше, а можно
отредактировать конфигурацию в тексте):
< handlers >
< add name =«PHP4» path ="*.php" verb ="*" modules =«FastCgiModule»
scriptProcessor ="C:\inetpub\php\php41.exe "
resourceType =«Unspecified» />

* This source code was highlighted with .

Использование разных наборов настроек PHP

Если есть желание настраивать PHP по-разному для
разных сайтов, то опять же все это можно описать через настройки конфигурации в
applicationHost.config.
< fastCgi >

< application fullPath ="C:\inetpub\php\php-cgi.exe "

arguments ="-d my.website=wordpress" >

< environmentVariables >

< environmentVariable name =«PHPRC» value =«C:\inetpub\wordpress» />





< application fullPath ="C:\inetpub\php\php-cgi.exe "

arguments ="-d my.website=phpsite" >

< environmentVariables >

< environmentVariable name =«PHPRC» value =«C:\inetpub\phpsite» />






* This source code was highlighted with .

После этого, настройки связываются с соответствующими сайтами в
web.config:
< system.webServer >

< handlers accessPolicy =«Read, Script» >
< add name =«PHP» path ="*.php" verb ="*" modules =«FastCgiModule»
scriptProcessor ="C:\inetpub\php\php-cgi.exe|-d my.website=wordpress "

resourceType =«Unspecified» requireAccess =«Script» />




* This source code was highlighted with .

В соответствии с приведенной конфигурацией, php.ini
нужно разместить в директории каждого из сайтов.
При редактировании настроек, стоит строго соблюдать совпадение путей к
соответствующей версии PHP и с
applicationHost.config и в web.config, чтобы
избежать неожиданных результатов, если пути будут перепутаны.
На первый взгляд редактирование конфигурации может показаться сложным и
неудобным процессом, но как только вы привыкните к конфигурации в
XML и распространению настроек методом
Ctrl+C, Ctrl+V, вы будете удивляться наличию других
способов конфигурации:)

Настройки безопасности PHP

В php.ini мноо разных настроек, многие из которых
влияют на безопасность использования PHP. Настроить
все подходящим образом, достойное дело.
Set allow_url_fopen=Off
; использование URL для операций с файлами
Set allow_url_include=Off
register_globals=Off
; отмена регистрации глобальных переменных
open_basedir=«c:\inetpub\» ;
ограничение на директорию, в которой работает PHP

Max_execution_time=30 ; ограничение
времени выполнения скриптов
max_input_time=60
memory_limit=16M ;
ограничение на размер используемой памяти
upload_max_filesize=2M
post_max_size=8M
max_input_nesting_levels=64
display_errors=Off
; отключение сообщений об ошибках
log_errors=On
error_log=«C:\error.log»
expose_php=Off
; скрыть присутствие PHP

Заключение

PHP на Windows - это не
просто интересно и удобно, главное, что это работает. А команда
IIS работает над тем, чтобы PHP
работал на Windows не хуже, чем на
Unix/Linux (конечно, стараются сделать лучше).
Поскольку это новая тема для Microsoft, то мы можем
сделать какие-то ошибки, можем чего-то не замечать и не понимать, поэтому нам
очень важно получать комментарии от вас - разработчиков и администраторов.
Пишите в комментариях ваши пожелания и проблемы, которые вы видите сейчас в
PHP на Windows, а мы будем
стараться проблемы решать, а пожелания реализовывать.

Теги: Добавить метки

19.03.17 5.8K

Проект Apache не предоставляет бинарные версии программного обеспечения, а только исходный код. Тем не менее, их можно получить на сторонних сайтах:

  • ApacheHaus ;
  • Apache Lounge .

Загрузите 32-разрядную версию Apache Windows (httpd-2.4.20-win32-VC14.zip ) или 64-разрядную версию (httpd-2.4.20-win64-VC14.zip ). Проверьте, установлена ли у вас 64-разрядная версия ОС . Чтобы определить это, можно использовать msinfo32.exe . Этот инструмент помогает в сборе информации о компьютере, в диагностике проблем или его можно использовать для доступа к другим инструментам.

Чтобы запустить его, выполните команду Выполнить> msinfo32> нажмите Enter .

После того, как найдете нужную версию, скачайте Zip-архив , а затем извлеките его содержимое в папку C:Apache24 .

Перед запуском сервера Apache , если нужно изменить порт прослушивания на 8181 :

  • Откройте в текстовом редакторе файл C:Apache24confhttpd.conf ;
  • Найдите следующую строку: Listen 80 ;
  • И измените ее на: Listen 8181 .

Сохраните изменения.

Теперь можно запустить сервер Apache Windows 7 :

Откройте командную строку от имени администратора и перейдите в подкаталог bin :

Введите httpd.exe и нажмите Enter .

Если на экране появилось диалоговое окно с сообщением об отсутствии файла MSVCR140.dll , необходимо установить Visual C ++ Redistributable для Visual Studio 2015 (выберите vc_redist.x64.exe , если у вас установлена 64-разрядная версия Windows ).

Теперь откройте браузер и введите в адресную строку http://localhost:8181 , чтобы запустить демонстрационный сайт.

Установка PHP 7 в Windows

PHP 7 — важное обновление для серверного языка веб-разработки PHP . Загрузите zip-архив VC14 x64 Thread Safe (2016-Apr-29 00:38:19) . Если вы загрузили 32-разрядную версию Apache , необходимо установить PHP x86 .

Создайте папку с именем «php7 », извлеките в нее содержимое архива php-7.0.6-Win32-VC14-x64.zip , а затем поместите папку в корень диска C:

Настройка Apache для использования PHP

Откройте файл конфигурации установки Windows Apache C:Apache24confhttpd.conf .

Скопируйте следующие строки в начало файла:

  • AddHandler application/x-httpd-php.php ;
  • AddType application/x-httpd-php .php .html ;
  • LoadModule php7_module «c:/php7/php7apache2_4.dll» ;
  • PHPIniDir «c:/php7» .

В разделе добавьте строку index.php и поместите ее перед index.html :

DirectoryIndex index.php index.html

Сохраните файл Apache PHP Windows . Теперь переименуйте файл C:php7php.ini-development в C:php7php.ini.

Включение mod_rewrite для перезаписи URL-адресов

Откройте файл конфигурации Apache C:Apache24confhttpd.conf ;
Найдите в нем строку #LoadModule rewrite_module modules/mod_rewrite.so и удалите символ хеш «#» ;
Найдите все вхождения строки «AllowOverride None » и измените их на «AllowOverride All» .

Настройка PHP с MySQL

Отредактируйте файл php.ini и раскомментируйте каталог расширений. Удалите символ «; » в начале строк:

; Directory in which the loadable extensions (modules) reside. ; http://php.net/extension-dir ; extension_dir = "./" ; On windows: extension_dir = "ext"

Активируйте следующие строки, это даст возможность запуска модулей MySQL :

extension=php_mysqli.dll extension=php_pdo_mysql.dll

А также приведенные ниже строки, если вы используете установку Apache PHP MySQL Window s в среде разработки:

extension=php_curl.dll extension=php_fileinfo.dll extension=php_gd2.dll extension=php_mbstring.dll extension=php_openssl.dll

Раскомментируйте error_log , чтобы включить ведение журнала файлов:

; Log errors to specified file. PHP"s default behavior is to leave this value ; empty. ; http://php.net/error-log ; Example: error_log = c:php7php_errors.log

Сохраните изменения.

ВАЖНО! Установите PATH для Windows , чтобы найти PHP

  • Кликните правой кнопкой мыши на ярлыке Мой компьютер — Свойства — Дополнительно — Переменные среды ;
  • В разделе «Системные переменные » найдите пункт «Путь », кликните по нему и выберите «Изменить »;
  • Добавьте в конце путь к папке php (обязательно после точки с запятой «;» ). Например: «;C:php7 «;
  • Нажмите «ОК ».

Как проверить, установлен ли PHP

Создайте файл по адресу C:Apache24htdocsphpinfo.php и добавьте в него следующий код.

В этой статье мы покажем вам, как установить PHP 7.2 на Ubuntu 16.04. PHP (Hypertext Preprocessor) – это язык сценариев на стороне сервера с открытым исходным кодом, предназначенный в основном для создания динамических интерактивных веб-сайтов. PHP является одним из самых популярных языков и свободно доступен для перераспределения и модификаций. PHP можно запускать практически на любом веб-сервере (например, Apache) и на каждой платформе ОС (Linux, Mac OS, Windows). PHP 7.2 был официально выпущен в прошлом году. В последней версии PHP 7.2 есть новые и улучшенные функции и функции, которые позволят разработчикам лучше писать код.

Требования:

  • Для целей данного руководства мы будем использовать Ubuntu VPS. Наш уже поставляется с предустановленным рабочим стеком LAMP. Тем не менее, мы все равно проведем все необходимые шаги и покажем вам, как устанавливать и настраивать стек LAMP самостоятельно, если вы делаете это на чистом сервере.
  • Также необходим полный доступ к SSH-корню или .

Шаг 1. Подключение к вашему серверу через SSH и обновление пакетов сервера.

Прежде чем мы начнем, давайте качестве пользователя root и обновим ваши пакеты ОС Ubuntu до последней доступной версии.

Чтобы подключиться к вашему серверу через SSH в качестве пользователя root, используйте следующую команду:

Ssh root@IP_ADDRESS -p PORT_NUMBER

Замените «IP_ADDRESS» и «PORT_NUMBER» на ваш фактический IP-адрес сервера и номер порта SSH.

После установки убедитесь, что пакеты вашей серверной ОС обновлены, выполнив следующие команды:

Apt-get update apt-get upgrade

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

Шаг 2. Установка веб-сервера

В этом разделе мы покажем вам, как установить веб-сервер на свой VPS. Мы можем установить Apache или nginx в качестве веб-сервера. Для целей этого руководства мы установим веб-сервер Apache. Apache – это быстрый и безопасный веб-сервер и один из самых популярных и широко используемых веб-серверов в мире.

Чтобы установить веб-сервер Apache, выполните следующую команду на своем сервере:

Apt-get install apache2

По завершении установки вы должны запустить Apache:

Systemctl start apache2

Кроме того, вы можете включить Apache для автоматического запуска при загрузке сервера:

Systemctl enable apache2

Чтобы проверить статус веб-сервера Apache и убедиться, что он запущен и работает, вы можете использовать следующую команду:

Systemctl status apache2

Чтобы убедиться, что Apache запущен, вы также можете открыть веб-браузер и ввести IP-адрес своего сервера (например, http://your_server_ip_address ). Если Apache успешно установлен, вы должны увидеть страницу приветствия по умолчанию Apache.

Шаг 3: Установите PPD Ondřej Surý

PHP 7.2 можно установить с помощью PPA Ondřej Surý, поэтому установите software-properties-common и python-software-properties:

Sudo apt-get install software-properties-common python-software-properties

Затем добавьте ondrej PPA и обновите свои источники:

Sudo add-apt-repository -y ppa:ondrej/php sudo apt-get update

Шаг 4. Установка PHP 7.2.

Установите PHP 7.2, используя следующую команду:

Sudo apt-get install php7.2 php7.2-cli php7.2-common

Шаг 5: Поиск и установка определенных расширений PHP 7.2

Если вы хотите установить определенное расширение PHP 7.2, вы можете выполнить поиск, если он доступен, используя следующую команду:

Sudo apt search php7.2

Шаг 7. Установка наиболее часто используемых расширений PHP.

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

Sudo apt-get install php7.2-curl php7.2-gd php7.2-json php7.2-mbstring php7.2-intl php7.2-mysql php7.2-xml php7.2-zip

Шаг 8: Проверьте установку PHP

Используйте следующую команду, чтобы проверить версию PHP, установленную на вашем сервере:

Вы должны получить следующий результат:

PHP 7.2.9-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Aug 19 2018 07:16:12) (NTS) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.9-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

Теперь PHP 7.2 был установлен на вашем сервере Ubuntu, и если мы хотим изменить версию PHP по умолчанию на PHP 7.2, которая используется веб-сервером, нам нужно отключить старую версию PHP 7.0 и включить вновь установленную.

Отключить php 7.0

a2dismod php7.0

Включить php 7.2

a2enmod php7.2

Перезапустите веб-сервер Apache, чтобы изменения вступили в силу:

Systemctl restart apache2

Чтобы протестировать вашу установку и проверить, что расширения Apache, PHP и PHP работают правильно, создайте новый файл info php:

Vi /var/www/html/phpinfo.php

Добавьте к нему следующий контент:

Откройте файл «phpinfo.php» с помощью веб-браузера:

Http:///phpinfo.php or http:///phpinfo.php

и посмотрите текущую информацию о PHP на вашем сервере.

Вот и все. Вы успешно установили PHP 7.2 на сервере Ubuntu 16.04. Для получения дополнительной информации о PHP 7 обратитесь к официальной документации PHP: http://php.net/docs.php.

Представляем вашему вниманию новый курс от команды The Codeby - "Тестирование Веб-Приложений на проникновение с нуля". Общая теория, подготовка рабочего окружения, пассивный фаззинг и фингерпринт, Активный фаззинг, Уязвимости, Пост-эксплуатация, Инструментальные средства, Social Engeneering и многое другое.


Если вы пользователь Linux, то обратитесь к статье " ".

Выход PHP 7

На данный момент доступен PHP 7.0.0 Alpha выпуск 2. В самые ближайшие дни появится первая бета. Ни альфы ни беты не рекомендуются для реальной работы. Но попробовать их на тестовом сервере уже можно.

Тем паче, что изменения PHP7 очень значительны:

  • Увеличение производительности PHP 7 до двух раз по сравнению с PHP 5.6 (вот это да!)
  • Ожидаемая поддержка 64-бит
  • Многие фатальные ошибки теперь Exceptions (исключения)
  • Удаление старых и не поддерживаемых SAPI (программных интерфейсов серверных приложений) и расширений
  • Оператор NULL коалесцирующий (??)
  • Комбинированный оператор сравнения (<=>)
  • Декларация возвращаемого типа
  • Декларация скалярного типа
  • Анонимные классы

Как установить PHP 7 на Windows

PHP любой версии почти всегда ставят в паре с сервером и системой управления базами данных. Если у вас совсем нет сервера, то обратитесь к статье « ». Когда в той статье дойдёте до установки PHP, то возвращайтесь сюда.

Если сервер у вас уже есть, то общие вопросы по обновлению вы найдёте в статье « ».

Особенности установки PHP 7 на Windows

Я ставил на Apache 2.4 VC14. Если вы ещё не обновили сервер, то сделайте это. Ссылки и подробности по этой инструкции.

Для скачивания PHP 7.0 перейдите на эту страницу . Все программы всегда скачивайте только с официальных сайтов!

Выберите версию Thread Safe (64-битную или 32-битную как и ваш сервер Apache).

Обязательно нужен Visual C++ Redistributable for Visual Studio 2015 ! Если вы уже обновили сервер Apache, то этому серверу также нужен этот пакет. Т.е. вы уже должны были его установить. Если это не так, то перейдите на официальный сайт и скачайте пакет соответствующей битности.

После скачивания установите его.

Если при установке сервера вы пользуетесь , то распакуйте содержимое скаченного архива с PHP в каталог C:ServerbinPHP .

Перейдите в этот каталог, найдите файл php.ini-development и переименуйте его в php.ini .

Откройте этот файл любым текстовым редактором, найдите там строчку

; extension_dir = "ext"

И замените её на

Extension_dir = "ext"

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

;extension=php_bz2.dll ;extension=php_curl.dll ;extension=php_fileinfo.dll ;extension=php_gd2.dll ;extension=php_gettext.dll ;extension=php_gmp.dll ;extension=php_intl.dll ;extension=php_imap.dll ;extension=php_interbase.dll ;extension=php_ldap.dll ;extension=php_mbstring.dll ;extension=php_exif.dll ; Must be after mbstring as it depends on it ;extension=php_mysqli.dll ;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client ;extension=php_openssl.dll ;extension=php_pdo_firebird.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_oci.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

И замените их на следующие строки. Обратите внимание, некоторые расширения оставлены отключёнными, поскольку при их включении Apache не запускается!

Extension=php_bz2.dll extension=php_curl.dll extension=php_fileinfo.dll extension=php_gd2.dll extension=php_gettext.dll extension=php_gmp.dll extension=php_intl.dll extension=php_imap.dll ;extension=php_interbase.dll extension=php_ldap.dll extension=php_mbstring.dll extension=php_exif.dll ; Must be after mbstring as it depends on it extension=php_mysqli.dll ;extension=php_oci8_12c.dll ; Use with Oracle Database 12c Instant Client extension=php_openssl.dll ;extension=php_pdo_firebird.dll extension=php_pdo_mysql.dll ;extension=php_pdo_oci.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_soap.dll ;extension=php_sockets.dll ;extension=php_sqlite3.dll ;extension=php_tidy.dll ;extension=php_xmlrpc.dll ;extension=php_xsl.dll

Эти расширения можно включить все:

Extension=php_soap.dll extension=php_sockets.dll extension=php_sqlite3.dll extension=php_tidy.dll extension=php_xmlrpc.dll extension=php_xsl.dll

Сохраняем и закрываем файл.

Теперь переходим к конфигурационному файлу Apache. У тех, кто ставил по моей инструкции, этот файл здесь C:ServerbinApache24confhttpd.conf

Открываем его любым текстовым редактором. Находим строки, которыми мы подключали PHP 5, и удаляем их.

#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL PHPIniDir "C:/Server/bin/PHP" AddHandler application/x-httpd-php .php LoadModule php5_module "C:/Server/bin/PHP/php5apache2_4.dll" #END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL

Вместо них добавляем строки:

Гарант является доверенным посредником между Участниками при проведении сделки.


15.03.17 5.1K

Конфигурационный файл php.ini является основным инструментом настройки ядра PHP . Он считается каждый раз при инициализации PHP . Если изменение не отображается, не забудьте остановить и перезапустить httpd . Если внесенные изменения до сих пор действуют, используйте функцию phpinfo() , чтобы проверить, php ini где лежит.

Файл конфигурации хорошо прокомментирован и подробно проработан. Параметры чувствительны к регистру, значения ключевых слов – нет; пробелы и строки, начинающиеся с точки с запятой, игнорируются. Логические значения могут быть представлены как 1/0 , Yes/No , On/Off или True/False . Значения по умолчанию в php.ini повлияют на установку PHP , которую позже можно будет настроить.

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

short_open_tag = Off

Короткие открытые теги выглядят так: . Для этого параметра должно быть установлено значение Off , если вы хотите использовать функции обработки XML .

safe_mode = Off

Если этот параметр имеет значение ON , вероятно, вы скомпилировали PHP с флагом enable-safe-mode . Безопасный режим наиболее важен для использования CGI .

safe_mode_exec_dir =

Эта опция имеет значение только в том случае, если включен безопасный режим. Она также может быть установлена с флагом —with-exec-dir во время процесса сборки Unix . PHP в безопасном режиме выполняет внешние двоичные файлы только из этого каталога. По умолчанию используется каталог /usr/local/bin . Это не имеет ничего общего с обслуживанием обычной PHP/HTML веб-страницы.

safe_mode_allowed_env_vars =

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

safe_mode_protected_env_vars =

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

disable_functions =

Довольно полезным дополнением в конфигурации PHP4 , которое сохранилось и в версии PHP5 , является возможность отключения выбранных функций по соображениям безопасности. Раньше это требовало ручной правки кода на языке C , на котором был написан интерпретатор PHP . Функции файловой системы, операционной системы и сети должны быть первыми в этом списке, потому что возможность записи файлов и изменения системы через HTTP не является безопасным.

max_execution_time = 30

При настройке php ini нужно знать, что функция set_time_limit() не будет работать в безопасном режиме. Поэтому это основной способ реализовать задержку выполнения скрипта в безопасном режиме. В Windows вы должны выполнить принудительное завершение, основываясь на максимальном уровне потребляемой памяти, а не на времени. Также можно использовать настройку таймаута Apache для реализации задержки. Но она будет применена и к файлам сайта, не являющимся PHP .

error_reporting = E_ALL & ~E_NOTICE

Значением по умолчанию является E_ALL & ~E_NOTICE , все ошибки кроме уведомлений. Для серверов должно быть установлено, как минимум, значение по умолчанию. И только на основных серверах можно использовать меньшее значение.

error_prepend_string = [«»]

Вместе с » используется со строками, как при формировании значения поля формы.

variables_order = EGPCS

Заменяет gpc_order . Обе версии устарели вместе с register_globals . Он устанавливает порядок различных переменных: Environment , GET , POST , COOKIE и SERVER (или Built-in ). Вы можете изменить этот порядок. Переменные будут последовательно перезаписаны слева направо, при этом самый правый всегда «выигрывает ». Это означает, что если оставить значение по умолчанию и использовать одно имя для переменной среды, переменной POST и переменной COOKIE , то, в конце концов, имя будет принадлежать переменной COOKIE .

register_globals = Off

Этот параметр php ini set позволяет определить, нужно ли регистрировать переменные EGPCS как глобальные. В настоящее время этот способ устарел, и, начиная с PHP 4.2 , этот флаг по умолчанию установлен в значение Off . Вместо него используйте суперглобальные массивы.

gpc_order = GPC

Этот параметр устарел.

magic_quotes_gpc = On

Экранирует кавычки во входящих данных GET/POST/COOKIE . Если вы используете много форм, которые отправляют данные сами себе или другим формам, и отображают значения форм, нужно активировать эту директиву или использовать функции addslashes() для данных строкового типа.

magic_quotes_runtime = Off

Этот параметр экранирует кавычки во входящих строках базы данных и текстовых строках. Помните, что SQL добавляет слеш в одинарные кавычки и апострофы при сохранении строк и не убирает их при возвращении строк. Если этот параметр выключен, необходимо использовать функцию stripslashes() при выводе любых типов строковых данных из БД SQL . Если для magic_quotes_sybase установлено значение On , то этот параметр должен быть Off .

magic_quotes_sybase = Off

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

auto-prepend-file =

Если в этом параметре php ini указан путь, PHP должен автоматически добавить конструкцию include() в начало каждого PHP-файла . Следует учитывать ограничения для путей включаемых файлов.

auto-append-file =

Если в этом параметре указан путь, PHP должен автоматически ввести конструкцию include() в конец каждого PHP-файла , кроме случаев, когда осуществляется выход с помощью функции exit () . Следует учитывать ограничения для путей включаемых файлов.

include_path =

Если установить это значение, вам будет разрешено включать или запрашивать файлы только из указанных каталогов. Каталог include обычно находится под корневым документом. Это необходимо, если вы работаете в безопасном режиме. Установите для параметра значение .in , чтобы включить файлы из каталога, в котором находится ваш скрипт. Несколько каталогов разделяются двоеточиями: .:/usr/local/apache/htdocs:/usr/local/lib .

doc_root =

При настройке php ini если вы используете Apache , то в файле httpd.conf корневой каталог документа для этого сервера или виртуального хоста уже задан. Установите это значение здесь, если используете безопасный режим или хотите разрешить PHP только для части сайта (например, только в одном подкаталоге ).

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то