SlideShare a Scribd company logo
Установка и настройка
интерпретатора языка
PHP
МИХАИЛ КРОЙТОР, МОЛДГУ, 2018
Содержание
Установка интерпретатора языка PHP
Подключение интерпретатора PHP к Web серверу
Расширения интерпретатора языка PHP
Настройка интерпретатора языка PHP
Некоторые особенности PHP
◦ Работа из командной строки
◦ Встроенный web сервер
Установка интерпретатора языка PHP
Debian:
◦ apt-get update
◦ apt-get upgrade
◦ apt-get install php7.1-common libapache2-mod-php7.1
◦ # /etc/init.d/apache2 stop
◦ # /etc/init.d/apache2 start
Изначально интерпретатор устанавливается с основными модулями ядра. Для установки
дополнительных модулей также надо использовать команду apt-get.
◦ apt-get install php7.1-mysql php7.1-curl
Установка интерпретатора языка PHP
Подключение интерпретатора PHP
к Web серверу
Для подключения PHP в качестве модуля Apache необходимо иметь соответствующий
модуль. Обычно он поставляется с интерпретатором PHP
Добавьте в конфигурационный файл Apache после группы подключения модулей
следующие строки:
◦ PhpIniDir "C:/php"
◦ LoadModule php7_module "C:/php/php7apache2_4.dll"
◦ AddHandler application/x-httpd-php .php
Найдите настройку использования модуля dir_module и добавьте файл по умолчанию
index.php:
◦ <IfModule dir_module>
◦ DirectoryIndex index.html, index.php
◦ </IfModule>
Также PHP можно подключать в качестве CGI модуля
Расширения интерпретатора языка
PHP
название назначение
php_curl Взаимодействие с удаленными серверами по различным протоколам
php_gd2 Обработка и генерация изображений
php_intl Поддержка интернационализации (транслитерация, кодировки и т.д.)
php_mbstring Поддержка многобайтных символов
php_mysqli Работа с DB MySQL
php_openssl Поддержка различных методов шифровки, дешифровки и других
криптографических операций
php_pdo_mysql Работа с DB MySQL через интерфейс PDO
php_pdo_sqlite Работа с DB sqlite через интерфейс PDO
php_sqlite3 Работа с DB sqlite3
Настройка интерпретатора языка PHP
Параметр Значение по
умолчанию
Комментарий
max_execution_time 30 Время выполнения скрипта в секундах.
max_input_time 60 Время получения входных данных в секундах
memory_limit 128M Максимальный объем памяти на скрипт.
error_reporting E_ALL Уровень ошибок
post_max_size 8M Максимальный размер запроса POST
default_charset "UTF-8" Кодировка по умолчанию
extension_dir "ext" Указание папки с модулями PHP
upload_max_filesize 64M Максимальный размер загружаемого файла
max_file_uploads 20 Максимальное количество загружаемых файлов через 1
запрос.
Настройка интерпретатора языка PHP
Параметр Значение по
умолчанию
Комментарий
default_socket_timeout 60 Время запроса через сокет в секундах
extension Подключение модуля PHP
session.cache_expire 180 Время жизни сессии в минутах
opcache.enable Включение кэширования
opcache.enable_cli Включение кэширования в командной строке
opcache.memory_cons
umption
Максивальный объем кэша
zend_extension Подключение Zend модуля PHP
Некоторые особенности PHP:
работа из командной строки
PHP можно использовать для написания консольных приложений. При работе с PHP в
командной строке некоторые его параметры переопределены, так как они теряют свой
смысл. Например:
◦ сообщения об ошибках идет без форматирования html;
◦ время выполнения скрипта не ограничено;
◦ нет поддержки GET и POST запросов;
◦ есть доступ к переменным $argc, $argv
И другие различия.
Запуск скрипта:
◦ php [-f] <имя файла>
◦ php –r <php код>
Некоторые особенности PHP:
встроенный web сервер
Интерпретатор языка PHP имеет встроенный Web сервер, предназначенный для помощи в
разработке. Он никоим образом не должен использоваться в общедоступных сетях.
Для запуска Web сервера PHP необходимо перейти в папку с сайтом и запустить php с
указанием ключа –S и имени хоста (и порта).
◦ cd www/my_site
◦ php -S localhost:8080
Можно запустить Web сервер с указанием корневого документа или директории:
◦ php -S localhost:808 -t /home/web/
Использование PHP Web сервера с удаленных машин:
◦ php –S 0.0.0.0:8000
Спасибо за внимание!
ВОПРОСЫ?

More Related Content

What's hot

Thumbtack Expertise Days # 5 - Ansible
Thumbtack Expertise Days # 5 - AnsibleThumbtack Expertise Days # 5 - Ansible
Thumbtack Expertise Days # 5 - Ansible
Alexey Remnev
 
Первые шаги с RabbitMQ
Первые шаги с RabbitMQПервые шаги с RabbitMQ
Первые шаги с RabbitMQ
Alexander Svetkin
 
07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера
Roman Brovko
 
17 - Web-технологии. Real Time сообщения
17 - Web-технологии. Real Time сообщения17 - Web-технологии. Real Time сообщения
17 - Web-технологии. Real Time сообщения
Roman Brovko
 
мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1rit2011
 
08 - Web-технологии. Архитектура frontend-backend
08 - Web-технологии. Архитектура frontend-backend08 - Web-технологии. Архитектура frontend-backend
08 - Web-технологии. Архитектура frontend-backend
Roman Brovko
 
openSUSE Build Server от Б до Ю
openSUSE Build Server от Б до ЮopenSUSE Build Server от Б до Ю
openSUSE Build Server от Б до Ю
Minsk Linux User Group
 
«​Масштабируемый DevOps​» Александр Колесень
«​Масштабируемый DevOps​» Александр Колесень«​Масштабируемый DevOps​» Александр Колесень
«​Масштабируемый DevOps​» Александр Колесень
IT Share
 
High Availability в жизни обычного разработчика
High Availability в жизни обычного разработчикаHigh Availability в жизни обычного разработчика
High Availability в жизни обычного разработчика
Sumy PHP User Grpoup
 
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 6
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 6Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 6
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 67bits
 
Продвинутая web-отладка с Fiddler
Продвинутая web-отладка с FiddlerПродвинутая web-отладка с Fiddler
Продвинутая web-отладка с FiddlerAlexander Feschenko
 
Зачем программистам Ansible
Зачем программистам AnsibleЗачем программистам Ansible
Зачем программистам Ansible
Denis Honig
 
Стажировка-2014, занятие 6 (часть 1). Web-приложения
Стажировка-2014, занятие 6 (часть 1). Web-приложенияСтажировка-2014, занятие 6 (часть 1). Web-приложения
Стажировка-2014, занятие 6 (часть 1). Web-приложения7bits
 
Стажировка-2013, разработчики, занятие 7. Web, HTTP
Стажировка-2013, разработчики, занятие 7. Web, HTTPСтажировка-2013, разработчики, занятие 7. Web, HTTP
Стажировка-2013, разработчики, занятие 7. Web, HTTP7bits
 
15 - Web-технологии. Сессии и авторизация
15 - Web-технологии. Сессии и авторизация15 - Web-технологии. Сессии и авторизация
15 - Web-технологии. Сессии и авторизация
Roman Brovko
 
Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)
lectureswww lectureswww
 
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...rit2011
 
02 - Web-технологии. Web-клиенты
02 - Web-технологии. Web-клиенты02 - Web-технологии. Web-клиенты
02 - Web-технологии. Web-клиенты
Roman Brovko
 

What's hot (20)

Thumbtack Expertise Days # 5 - Ansible
Thumbtack Expertise Days # 5 - AnsibleThumbtack Expertise Days # 5 - Ansible
Thumbtack Expertise Days # 5 - Ansible
 
Первые шаги с RabbitMQ
Первые шаги с RabbitMQПервые шаги с RabbitMQ
Первые шаги с RabbitMQ
 
07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера
 
17 - Web-технологии. Real Time сообщения
17 - Web-технологии. Real Time сообщения17 - Web-технологии. Real Time сообщения
17 - Web-технологии. Real Time сообщения
 
мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1
 
08 - Web-технологии. Архитектура frontend-backend
08 - Web-технологии. Архитектура frontend-backend08 - Web-технологии. Архитектура frontend-backend
08 - Web-технологии. Архитектура frontend-backend
 
openSUSE Build Server от Б до Ю
openSUSE Build Server от Б до ЮopenSUSE Build Server от Б до Ю
openSUSE Build Server от Б до Ю
 
«​Масштабируемый DevOps​» Александр Колесень
«​Масштабируемый DevOps​» Александр Колесень«​Масштабируемый DevOps​» Александр Колесень
«​Масштабируемый DevOps​» Александр Колесень
 
High Availability в жизни обычного разработчика
High Availability в жизни обычного разработчикаHigh Availability в жизни обычного разработчика
High Availability в жизни обычного разработчика
 
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 6
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 6Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 6
Спецкурс "Современные практики разработки ПО", 2013-2014 уч. год, занятие 6
 
Продвинутая web-отладка с Fiddler
Продвинутая web-отладка с FiddlerПродвинутая web-отладка с Fiddler
Продвинутая web-отладка с Fiddler
 
Зачем программистам Ansible
Зачем программистам AnsibleЗачем программистам Ansible
Зачем программистам Ansible
 
Стажировка-2014, занятие 6 (часть 1). Web-приложения
Стажировка-2014, занятие 6 (часть 1). Web-приложенияСтажировка-2014, занятие 6 (часть 1). Web-приложения
Стажировка-2014, занятие 6 (часть 1). Web-приложения
 
WWW
WWWWWW
WWW
 
Стажировка-2013, разработчики, занятие 7. Web, HTTP
Стажировка-2013, разработчики, занятие 7. Web, HTTPСтажировка-2013, разработчики, занятие 7. Web, HTTP
Стажировка-2013, разработчики, занятие 7. Web, HTTP
 
15 - Web-технологии. Сессии и авторизация
15 - Web-технологии. Сессии и авторизация15 - Web-технологии. Сессии и авторизация
15 - Web-технологии. Сессии и авторизация
 
Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)Спецификация WSGI (PEP-333)
Спецификация WSGI (PEP-333)
 
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
сотни серверов, десятки компонент. автоматизация раскладки и конфигурирования...
 
02 - Web-технологии. Web-клиенты
02 - Web-технологии. Web-клиенты02 - Web-технологии. Web-клиенты
02 - Web-технологии. Web-клиенты
 
PHP
PHPPHP
PHP
 

Similar to 06 php instalation_ru

Php 5.5 - idea generator!
Php 5.5 - idea generator!Php 5.5 - idea generator!
Php 5.5 - idea generator!
Vadim Kalin
 
Компиляция скриптов PHP. Алексей Романенко
Компиляция скриптов PHP. Алексей РоманенкоКомпиляция скриптов PHP. Алексей Романенко
Компиляция скриптов PHP. Алексей РоманенкоFuenteovejuna
 
Компиляция скриптов PHP (Алексей Романенко)
Компиляция скриптов PHP (Алексей Романенко)Компиляция скриптов PHP (Алексей Романенко)
Компиляция скриптов PHP (Алексей Романенко)Ontico
 
Perl Debugger и mod_perl
Perl Debugger и mod_perlPerl Debugger и mod_perl
Perl Debugger и mod_perl
Иван mrRico
 
Как мы делаем модули PHP в Badoo – Антон Довгаль
Как мы делаем модули PHP в Badoo – Антон ДовгальКак мы делаем модули PHP в Badoo – Антон Довгаль
Как мы делаем модули PHP в Badoo – Антон Довгаль
Badoo Development
 
инструментарий
инструментарийинструментарий
инструментарийigdweb
 
Как быть с большими сайтами на Word press
Как быть с большими сайтами  на Word pressКак быть с большими сайтами  на Word press
Как быть с большими сайтами на Word press
vovasik
 
Zend Framework и мультиязычность
Zend Framework и мультиязычностьZend Framework и мультиязычность
Zend Framework и мультиязычностьStepan Tanasiychuk
 
Magento performance
Magento performanceMagento performance
Magento performance
aheadWorks
 
История одной трансформации: как Magento 1 разработчику быстро переориентиров...
История одной трансформации: как Magento 1 разработчику быстро переориентиров...История одной трансформации: как Magento 1 разработчику быстро переориентиров...
История одной трансформации: как Magento 1 разработчику быстро переориентиров...
Magecom UK Limited
 
Как сделать проект с 1 500 000 просмотров в сутки, который не ломается - IzhD...
Как сделать проект с 1 500 000 просмотров в сутки, который не ломается - IzhD...Как сделать проект с 1 500 000 просмотров в сутки, который не ломается - IzhD...
Как сделать проект с 1 500 000 просмотров в сутки, который не ломается - IzhD...
Egor Konovalov
 
«Composer vs. копипаст модулей битрикса из проекта в проект»
«Composer vs. копипаст модулей битрикса из проекта в проект» «Composer vs. копипаст модулей битрикса из проекта в проект»
«Composer vs. копипаст модулей битрикса из проекта в проект»
Гузель Рахимова
 
2020.10.13 HA Redis is simple. FWDays Highload
2020.10.13 HA Redis is simple. FWDays Highload2020.10.13 HA Redis is simple. FWDays Highload
2020.10.13 HA Redis is simple. FWDays Highload
Yehor Herasymchuk
 
Ігор Карпиленко — PHPStorm for drupal developer
Ігор Карпиленко — PHPStorm for drupal developerІгор Карпиленко — PHPStorm for drupal developer
Ігор Карпиленко — PHPStorm for drupal developer
LEDC 2016
 
Lesson1
Lesson1Lesson1
Lesson1
jinol
 
Платформа .NET Core глазами PHP-разработчика
Платформа .NET Core глазами PHP-разработчикаПлатформа .NET Core глазами PHP-разработчика
Платформа .NET Core глазами PHP-разработчика
Георгий Драк
 
Основы Java. 4. Web
Основы Java. 4. WebОсновы Java. 4. Web
Основы Java. 4. Web
Sergey Nemchinsky
 

Similar to 06 php instalation_ru (20)

Php55
Php55Php55
Php55
 
Php 5.5 - idea generator!
Php 5.5 - idea generator!Php 5.5 - idea generator!
Php 5.5 - idea generator!
 
Компиляция скриптов PHP. Алексей Романенко
Компиляция скриптов PHP. Алексей РоманенкоКомпиляция скриптов PHP. Алексей Романенко
Компиляция скриптов PHP. Алексей Романенко
 
Компиляция скриптов PHP (Алексей Романенко)
Компиляция скриптов PHP (Алексей Романенко)Компиляция скриптов PHP (Алексей Романенко)
Компиляция скриптов PHP (Алексей Романенко)
 
Perl Debugger и mod_perl
Perl Debugger и mod_perlPerl Debugger и mod_perl
Perl Debugger и mod_perl
 
Как мы делаем модули PHP в Badoo – Антон Довгаль
Как мы делаем модули PHP в Badoo – Антон ДовгальКак мы делаем модули PHP в Badoo – Антон Довгаль
Как мы делаем модули PHP в Badoo – Антон Довгаль
 
инструментарий
инструментарийинструментарий
инструментарий
 
Как быть с большими сайтами на Word press
Как быть с большими сайтами  на Word pressКак быть с большими сайтами  на Word press
Как быть с большими сайтами на Word press
 
Zend Framework и мультиязычность
Zend Framework и мультиязычностьZend Framework и мультиязычность
Zend Framework и мультиязычность
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Magento performance
Magento performanceMagento performance
Magento performance
 
История одной трансформации: как Magento 1 разработчику быстро переориентиров...
История одной трансформации: как Magento 1 разработчику быстро переориентиров...История одной трансформации: как Magento 1 разработчику быстро переориентиров...
История одной трансформации: как Magento 1 разработчику быстро переориентиров...
 
Как сделать проект с 1 500 000 просмотров в сутки, который не ломается - IzhD...
Как сделать проект с 1 500 000 просмотров в сутки, который не ломается - IzhD...Как сделать проект с 1 500 000 просмотров в сутки, который не ломается - IzhD...
Как сделать проект с 1 500 000 просмотров в сутки, который не ломается - IzhD...
 
«Composer vs. копипаст модулей битрикса из проекта в проект»
«Composer vs. копипаст модулей битрикса из проекта в проект» «Composer vs. копипаст модулей битрикса из проекта в проект»
«Composer vs. копипаст модулей битрикса из проекта в проект»
 
2020.10.13 HA Redis is simple. FWDays Highload
2020.10.13 HA Redis is simple. FWDays Highload2020.10.13 HA Redis is simple. FWDays Highload
2020.10.13 HA Redis is simple. FWDays Highload
 
Ігор Карпиленко — PHPStorm for drupal developer
Ігор Карпиленко — PHPStorm for drupal developerІгор Карпиленко — PHPStorm for drupal developer
Ігор Карпиленко — PHPStorm for drupal developer
 
Lesson1
Lesson1Lesson1
Lesson1
 
Платформа .NET Core глазами PHP-разработчика
Платформа .NET Core глазами PHP-разработчикаПлатформа .NET Core глазами PHP-разработчика
Платформа .NET Core глазами PHP-разработчика
 
JPHP
JPHPJPHP
JPHP
 
Основы Java. 4. Web
Основы Java. 4. WebОсновы Java. 4. Web
Основы Java. 4. Web
 

More from mcroitor

09 server mgmt_ii_ro
09 server mgmt_ii_ro09 server mgmt_ii_ro
09 server mgmt_ii_ro
mcroitor
 
09 server mgmt_ii_ru
09 server mgmt_ii_ru09 server mgmt_ii_ru
09 server mgmt_ii_ru
mcroitor
 
10 server security_ro
10 server security_ro10 server security_ro
10 server security_ro
mcroitor
 
10 server security_ru
10 server security_ru10 server security_ru
10 server security_ru
mcroitor
 
08 server mgmt_ro
08 server mgmt_ro08 server mgmt_ro
08 server mgmt_ro
mcroitor
 
08 server mgmt_ru
08 server mgmt_ru08 server mgmt_ru
08 server mgmt_ru
mcroitor
 
07 virtual hosts_ro
07 virtual hosts_ro07 virtual hosts_ro
07 virtual hosts_ro
mcroitor
 
06 php instalation_ro
06 php instalation_ro06 php instalation_ro
06 php instalation_ro
mcroitor
 
05 db server_deployment_ro
05 db server_deployment_ro05 db server_deployment_ro
05 db server_deployment_ro
mcroitor
 
04 web server_deployment_ro
04 web server_deployment_ro04 web server_deployment_ro
04 web server_deployment_ro
mcroitor
 
03 web server_architecture_ro
03 web server_architecture_ro03 web server_architecture_ro
03 web server_architecture_ro
mcroitor
 
02 server hardware_ro
02 server hardware_ro02 server hardware_ro
02 server hardware_ro
mcroitor
 
02 server hardware_ru
02 server hardware_ru02 server hardware_ru
02 server hardware_ru
mcroitor
 
01 server definition_ro
01 server definition_ro01 server definition_ro
01 server definition_ro
mcroitor
 
01 server definition
01 server definition01 server definition
01 server definition
mcroitor
 
C++ и базы данных
C++ и базы данныхC++ и базы данных
C++ и базы данных
mcroitor
 
0.0 particularitatile programarii с++
0.0 particularitatile programarii с++0.0 particularitatile programarii с++
0.0 particularitatile programarii с++
mcroitor
 
MySQL din linie de comanda
MySQL din linie de comandaMySQL din linie de comanda
MySQL din linie de comanda
mcroitor
 
создание приложений windows forms
создание приложений windows formsсоздание приложений windows forms
создание приложений windows forms
mcroitor
 
основные пространства имен и классы microsoft
основные пространства имен и классы microsoftосновные пространства имен и классы microsoft
основные пространства имен и классы microsoft
mcroitor
 

More from mcroitor (20)

09 server mgmt_ii_ro
09 server mgmt_ii_ro09 server mgmt_ii_ro
09 server mgmt_ii_ro
 
09 server mgmt_ii_ru
09 server mgmt_ii_ru09 server mgmt_ii_ru
09 server mgmt_ii_ru
 
10 server security_ro
10 server security_ro10 server security_ro
10 server security_ro
 
10 server security_ru
10 server security_ru10 server security_ru
10 server security_ru
 
08 server mgmt_ro
08 server mgmt_ro08 server mgmt_ro
08 server mgmt_ro
 
08 server mgmt_ru
08 server mgmt_ru08 server mgmt_ru
08 server mgmt_ru
 
07 virtual hosts_ro
07 virtual hosts_ro07 virtual hosts_ro
07 virtual hosts_ro
 
06 php instalation_ro
06 php instalation_ro06 php instalation_ro
06 php instalation_ro
 
05 db server_deployment_ro
05 db server_deployment_ro05 db server_deployment_ro
05 db server_deployment_ro
 
04 web server_deployment_ro
04 web server_deployment_ro04 web server_deployment_ro
04 web server_deployment_ro
 
03 web server_architecture_ro
03 web server_architecture_ro03 web server_architecture_ro
03 web server_architecture_ro
 
02 server hardware_ro
02 server hardware_ro02 server hardware_ro
02 server hardware_ro
 
02 server hardware_ru
02 server hardware_ru02 server hardware_ru
02 server hardware_ru
 
01 server definition_ro
01 server definition_ro01 server definition_ro
01 server definition_ro
 
01 server definition
01 server definition01 server definition
01 server definition
 
C++ и базы данных
C++ и базы данныхC++ и базы данных
C++ и базы данных
 
0.0 particularitatile programarii с++
0.0 particularitatile programarii с++0.0 particularitatile programarii с++
0.0 particularitatile programarii с++
 
MySQL din linie de comanda
MySQL din linie de comandaMySQL din linie de comanda
MySQL din linie de comanda
 
создание приложений windows forms
создание приложений windows formsсоздание приложений windows forms
создание приложений windows forms
 
основные пространства имен и классы microsoft
основные пространства имен и классы microsoftосновные пространства имен и классы microsoft
основные пространства имен и классы microsoft
 

06 php instalation_ru

  • 1. Установка и настройка интерпретатора языка PHP МИХАИЛ КРОЙТОР, МОЛДГУ, 2018
  • 2. Содержание Установка интерпретатора языка PHP Подключение интерпретатора PHP к Web серверу Расширения интерпретатора языка PHP Настройка интерпретатора языка PHP Некоторые особенности PHP ◦ Работа из командной строки ◦ Встроенный web сервер
  • 3. Установка интерпретатора языка PHP Debian: ◦ apt-get update ◦ apt-get upgrade ◦ apt-get install php7.1-common libapache2-mod-php7.1 ◦ # /etc/init.d/apache2 stop ◦ # /etc/init.d/apache2 start Изначально интерпретатор устанавливается с основными модулями ядра. Для установки дополнительных модулей также надо использовать команду apt-get. ◦ apt-get install php7.1-mysql php7.1-curl
  • 5. Подключение интерпретатора PHP к Web серверу Для подключения PHP в качестве модуля Apache необходимо иметь соответствующий модуль. Обычно он поставляется с интерпретатором PHP Добавьте в конфигурационный файл Apache после группы подключения модулей следующие строки: ◦ PhpIniDir "C:/php" ◦ LoadModule php7_module "C:/php/php7apache2_4.dll" ◦ AddHandler application/x-httpd-php .php Найдите настройку использования модуля dir_module и добавьте файл по умолчанию index.php: ◦ <IfModule dir_module> ◦ DirectoryIndex index.html, index.php ◦ </IfModule> Также PHP можно подключать в качестве CGI модуля
  • 6. Расширения интерпретатора языка PHP название назначение php_curl Взаимодействие с удаленными серверами по различным протоколам php_gd2 Обработка и генерация изображений php_intl Поддержка интернационализации (транслитерация, кодировки и т.д.) php_mbstring Поддержка многобайтных символов php_mysqli Работа с DB MySQL php_openssl Поддержка различных методов шифровки, дешифровки и других криптографических операций php_pdo_mysql Работа с DB MySQL через интерфейс PDO php_pdo_sqlite Работа с DB sqlite через интерфейс PDO php_sqlite3 Работа с DB sqlite3
  • 7. Настройка интерпретатора языка PHP Параметр Значение по умолчанию Комментарий max_execution_time 30 Время выполнения скрипта в секундах. max_input_time 60 Время получения входных данных в секундах memory_limit 128M Максимальный объем памяти на скрипт. error_reporting E_ALL Уровень ошибок post_max_size 8M Максимальный размер запроса POST default_charset "UTF-8" Кодировка по умолчанию extension_dir "ext" Указание папки с модулями PHP upload_max_filesize 64M Максимальный размер загружаемого файла max_file_uploads 20 Максимальное количество загружаемых файлов через 1 запрос.
  • 8. Настройка интерпретатора языка PHP Параметр Значение по умолчанию Комментарий default_socket_timeout 60 Время запроса через сокет в секундах extension Подключение модуля PHP session.cache_expire 180 Время жизни сессии в минутах opcache.enable Включение кэширования opcache.enable_cli Включение кэширования в командной строке opcache.memory_cons umption Максивальный объем кэша zend_extension Подключение Zend модуля PHP
  • 9. Некоторые особенности PHP: работа из командной строки PHP можно использовать для написания консольных приложений. При работе с PHP в командной строке некоторые его параметры переопределены, так как они теряют свой смысл. Например: ◦ сообщения об ошибках идет без форматирования html; ◦ время выполнения скрипта не ограничено; ◦ нет поддержки GET и POST запросов; ◦ есть доступ к переменным $argc, $argv И другие различия. Запуск скрипта: ◦ php [-f] <имя файла> ◦ php –r <php код>
  • 10. Некоторые особенности PHP: встроенный web сервер Интерпретатор языка PHP имеет встроенный Web сервер, предназначенный для помощи в разработке. Он никоим образом не должен использоваться в общедоступных сетях. Для запуска Web сервера PHP необходимо перейти в папку с сайтом и запустить php с указанием ключа –S и имени хоста (и порта). ◦ cd www/my_site ◦ php -S localhost:8080 Можно запустить Web сервер с указанием корневого документа или директории: ◦ php -S localhost:808 -t /home/web/ Использование PHP Web сервера с удаленных машин: ◦ php –S 0.0.0.0:8000