Как работать с php в html
Перейти к содержимому

Как работать с php в html

  • автор:

Рекомендации по PHP на веб-платформе Майкрософт

Существует несколько действий, которые можно предпринять для оптимизации производительности Windows Server 2008 R2 или Windows Server 2008, IIS 7 и более поздних версий, а также производительности FastCGI для веб-рабочих нагрузок и приложений PHP. Как правило, эти процедуры можно выполнять в пользовательском интерфейсе, выполняя команды Appcmd.exe в окне командной строки и изменяя файлы конфигурации напрямую или путем написания скриптов инструментария управления Windows® (WMI).

Настройка поведения перезапуска процесса PHP

Убедитесь, что FastCGI всегда перезапускает процессы php-cgi.exe, прежде чем начнется собственная переработка PHP. Поведением перезапуска процесса FastCGI управляет экземпляр свойства конфигурацииMaxRequests. Это свойство указывает, сколько запросов будет обрабатываться процессом FastCGI перед перезапуском. PHP также имеет аналогичную функцию перезапуска процесса, которая управляется переменной среды PHP_FCGI_MAX_REQUESTS. Задав параметр instanceMaxRequests меньше или равен PHP_FCGI_MAX_REQUESTS, вы можете гарантировать, что собственная логика перезапуска процессов PHP никогда не будет работать.

Параметры FastCGI можно настроить с помощью диспетчера IIS или средства командной строки AppCmd.

Использование диспетчера IIS

  1. Чтобы настроить параметры перезапуска FastCGI с помощью диспетчера IIS, необходимо установить пакет администрирования для IIS, а затем выбрать Параметры FastCGI на уровне сервера. Снимок экрана: окно диспетчера I IS.Рис. 1 Диспетчер IIS, параметры FastCGI
  2. Затем выберите приложение FastCGI, которое нужно настроить, и нажмите кнопку Изменить в области Действия справа. Снимок экрана: окно диспетчера I IS с параметрами fast C G I в области main.Рис. 2. Страница параметров FastCGI
  3. В диалоговом окне Изменение приложенияFastCGI задайте для InstanceMaxRequest значение 10000, а затем нажмите кнопку обзора рядом с параметром EnvironmentVariables. Снимок экрана: диалоговое окно Рис. 3. Диалоговое окно «Изменение приложения FastCGI»
  4. Добавьте переменную среды PHP_FCGI_MAX_REQUESTS и присвойте ей значение 10000.

Примечание Если эти параметры не настроены, используются следующие параметры по умолчанию: InstanceMaxRequests 200, PHP_FCGI_MAX_REQUESTS 500 (в большинстве сборок PHP).

Снимок экрана: диалоговое окно редактора коллекции переменных среды.

Рис. 4. Редактор коллекции переменных среды

Использование командной строки

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

C:\>%windir%\system32\inetsrv\appcmd set config -section:system.webServer/fastCgi /[fullPath='c:\\php-cgi.exe'].instanceMaxRequests:10000 C:\>%windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi /+"[fullPath='C:\\php-cgi.exe'].environmentVariables.[name='PHP_FCGI_MAX_REQUESTS' 

Отключение ненужных служб и процессов

Если сервер под управлением Windows Server 2008 R2 или Windows Server 2008 будет выделенным веб-сервером, для оптимизации производительности веб-рабочих нагрузок можно выполнить различные действия. Обратите внимание, что эти процедуры можно легко и быстро выполнить в пользовательском интерфейсе или из командной строки.

Убедитесь, что все ненужные роли и компоненты в установке Windows Server 2008 не установлены. Удалите такие процессы, как:

  • Microsoft Find Fast и другие службы индексирования поиска.
  • Трехмерные (трехмерные) заставки (которые могут занимать ресурсы ЦП).
  • Неиспользуемые сетевые протоколы.
  • Ненужные почтовые серверы.
  • Неиспользуемые антивирусные сканеры и аппаратные драйверы для мышей и инфракрасных портов.

Чтобы использовать пользовательский интерфейс, нажмите кнопку Пуск, выберите Службы, а затем прокрутите вниз до службы, которую требуется отключить, и щелкните Свойства. Щелкните стрелку в разделе Тип запуска и выберите пункт Отключено.

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

В Windows Server 2008 также есть управление на основе командной строки. В предыдущих версиях Windows было мало проверок зависимостей при добавлении или удалении ролей сервера или другого программного обеспечения. Простая команда в Windows Server 2008 может предоставить администраторам сервера список компонентов, которые будут добавлены или удалены. Команда диспетчера сервера также предоставляет механизм для автоматической установки ролей и компонентов сервера. Вы можете установить одну роль или компонент или объединить установку нескольких ролей или компонентов с помощью XML-файла ответов. Теперь вы можете легко собирать сведения об установленных ролях и (или) компонентах любого сервера и экспортировать эти результаты в XML для получения документации. Вы также можете определить, какие серверные компоненты будут затронуты установкой или удалением роли или компонента сервера.

Оптимизация производительности сервера

Чтобы оптимизировать производительность Windows Server 2008 или Windows Server 2008 R2, можно:

  • Запустите страничный код IIS в рабочей памяти, чтобы максимально увеличить пропускную способность данных.
  • Запустите процесс IIS (Inetinfo.exe) в качестве фоновой службы.
  • Отключите ведение журнала IIS.

Минимизация ведения журнала IIS

Если это не требуется, отключите ведение журнала на веб-сайтах, виртуальных каталогах, файлах и папках. Вы можете использовать пользовательский интерфейс или командную строку. При включении ведения журнала на сервере постоянно добавляются текстовые файлы, которые содержат сведения обо всех веб-сайтах. Это необходимо, если вы отслеживаете пропускную способность, хотя; периодически включать ведение журнала, чтобы следить за сайтами и используемой ими пропускной способностью, а затем отключать ведение журнала во все остальные моменты времени. Как правило, нет необходимости в постоянном ведении журнала, если вы не хотите постоянно отслеживать пропускную способность.

Чтобы использовать пользовательский интерфейс, откройте диспетчер IIS и перейдите к уровню, которым вы хотите управлять. В представлении Просмотр возможностей дважды щелкните Ведение журнала. На странице Ведение журнала в области Действия нажмите кнопку Отключить , чтобы отключить ведение журнала.

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

C:\windows\system32\inetsrv>appcmd set config /section:httpLogging /dontLog:True 

Включение регулирования пропускной способности

С увеличением числа сайтов, предлагающих содержимое мультимедиа, затраты на пропускную способность для многих предприятий могут быть очень высокими. Кроме того, большой процент пропускной способности мультимедиа тратится впустую, так как мультимедийное содержимое, отправляемое клиенту, никогда не используется. Обычно пользователи, просматривающие видео-сайты, watch только часть видео, прежде чем переходить к следующему видео или покидать страницу. Однако веб-сервер, использующий последовательную загрузку для доставки видео, обычно отправляет значительно больше данных, чем требуется для этих нескольких секунд воспроизведения. Большая часть этих данных никогда не используется.

Например, если ваши видео в среднем получают только 5 секунд времени просмотра, но доставляют (буфер) 30 секунд видеоданных за эти 5 секунд, вы потенциально зря тратить более 80 процентов пропускной способности.

Использование модуля регулирования скорости передачи

СЛУЖБЫ IIS включают модуль регулирования скорости передачи, который автоматически определяет частоту кодирования наиболее популярных типов видео. Вы можете управлять объемом данных, которые вы хотите предварительно отправить клиенту, чтобы исключить начальные задержки буферизации (быстрый запуск) и с каким процентом от закодированной скорости вы хотите доставить содержимое. Вы также можете настроить множество других параметров, таких как максимальная пропускная способность и одновременные подключения, а также управлять модулем программным способом.

Снимок экрана: график регулирования пропускной способности.

Рис. 5. Регулирование пропускной способности

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

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

  1. В диспетчере IIS разверните веб-сервер и щелкните, чтобы выбрать веб-сайт.
  2. Щелкните Ограничения. в области Действия.
  3. Установите флажок Ограничить количество подключений.
  4. Введите количество подключений, которые вы хотите разрешить. Обратите внимание, что каждый подключенный клиент использует приблизительно четыре одновременных подключения.
  5. Нажмите кнопку ОК.

Включение мониторинга ЦП

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

  1. В диспетчере IIS разверните веб-сервер и выберите пул приложений.
  2. Щелкните Дополнительные параметры на вкладке Действия.
  3. В поле Предел в разделе ЦП введите нужное значение.
  4. Нажмите кнопку ОК.

Использование Keep-Alives HTTP

Заголовок ответа http keep-alive повышает производительность веб-сервера, сохраняя подключение клиента и сервера открытым для нескольких запросов к серверу. Открытое подключение повышает производительность, когда клиент выполняет несколько запросов на содержимое веб-страницы, так как сервер может быстрее возвращать содержимое для каждого запроса. В противном случае сервер должен открывать новое подключение для каждого запроса. По умолчанию заголовок ответа HTTP keep-alive включен в IIS.

  1. В диспетчере IIS перейдите на уровень, которым требуется управлять.
  2. В представлении функций дважды щелкните заголовки HTTP-ответов.
  3. На странице Заголовки HTTP-ответа в области Действия щелкните Задать общие заголовки.
  4. В диалоговом окне Set Common HTTP Response Headers (Настройка общих заголовков http-ответов) установите флажок Enable HTTP keep-alive (Включить http keep-alive проверка) и нажмите кнопку ОК.

Чтобы включить заголовок HTTP Keep-Alive из командной строки, используйте следующий синтаксис:

C:\Windows\System32\inetsrv>appcmd set config /section:httpProtocol /allowKeepAlive:true | false 

Использование сжатия HTTP

Одним из наиболее эффективных способов сокращения пропускной способности, необходимой для доставки ответов приложения, является использование сжатия HTTP. Это может значительно уменьшить размер ответа, часто в 10 раз при применении к легко сжимаемого текстового содержимого, например HTML. Так как сжатие основано на согласовании содержимого и кодирования, определенном в протоколе HTTP 1.1, его включение безопасно для клиентов, которые не поддерживают сжатие. Эти клиенты просто получают несжатую версию содержимого.

СЛУЖБЫ IIS предоставляют две функции сжатия:

  • Статическое сжатие
  • Динамическое сжатие

Статическое сжатие предварительно сжимает статическое содержимое и сохраняет его на диске, тем самым позволяя будущим запросам обслуживать сжатое содержимое напрямую без дополнительных затрат на сжатие. Динамическое сжатие сжимает ответ в режиме реального времени и, следовательно, обеспечивает сжатие ответов, созданных приложениями. Преимущества динамического сжатия может использовать любая платформа приложений в IIS, включая ASP, ASP.NET или PHP.

Динамическое сжатие обычно не имеет чрезмерной нагрузки на ЦП. На самом деле динамическое сжатие часто приводит к менее чем 5 процентам общей загрузки ЦП на занятом сервере. Динамическое сжатие можно развернуть несколько свободно, чтобы обеспечить максимальную экономию пропускной способности для любых рабочих нагрузок приложений.

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

Сжатие HTTP можно настроить с помощью пользовательского интерфейса, запуская команды Appcmd.exe в окне командной строки, напрямую изменяя файлы конфигурации или создавая скрипты WMI.

Например, чтобы включить динамическое сжатие содержимого из командной строки, введите следующую команду и нажмите клавишу ВВОД:

C:\Windows\System32\inetsrv>appcmd set config /section:urlCompression /doDynamicCompression:True 

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

Снимок экрана: диспетчер I I SS с диалоговым окном сжатия в области main.

Рис. 6. Сжатие HTTP

Использовать проверку подлинности с помощью форм

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

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

С помощью СЛУЖБ IIS можно один раз настроить правила проверки подлинности на основе форм и авторизации URL-адресов для всего сайта, и вы знаете, что страницы ASPX, скрипты PHP, HTML-файлы и мультимедийное содержимое защищены от несанкционированного доступа.

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

Снимок экрана: экран диспетчера I I SS с диалоговым окном

  1. В диспетчере IIS перейдите на уровень, которым требуется управлять.
  2. В окне Просмотр возможностей дважды щелкните элемент Проверка подлинности.
  3. На странице Проверка подлинности выберите Проверка подлинности с помощью форм.
  4. В области Действия щелкните Включить , чтобы использовать проверку подлинности с помощью форм с параметрами по умолчанию. Рис. 7. Проверка подлинности на основе форм

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

C:\Windows\System32\inetsrv>appcmd set config /commit:WEBROOT /section:system.web/authentication /mode: None | Windows | Passport | Forms 

Управление СЛУЖБАми IIS 7.0 и более поздних версий с помощью поставщика PowerShell

Поставщик IIS PowerShell — это оснастка Windows PowerShell, которая позволяет управлять конфигурацией IIS и данными времени выполнения. Она обеспечивает простой доступ к веб-сайтам, пулам приложений, веб-приложениям, виртуальным каталогам, запросам в тестовом режиме, рабочим процессам и доменам приложений .NET в рабочих процессах.

Оболочка командной строки и язык сценариев Microsoft Windows PowerShell помогают ИТ-специалистам повысить контроль и производительность. Использование нового языка сценариев, ориентированного на администраторов, более 130 стандартных средств командной строки и согласованного синтаксиса и служебных программ, Windows PowerShell позволяет ИТ-специалистам легко управлять администрированием системы и ускорять автоматизацию. Windows PowerShell создается на основе среды CLR и платформа .NET Framework, принимающей и возвращающей объекты .NET.

На рисунке 8 показано, как использовать поставщик PowerShell для создания нового приложения IIS.

Снимок экрана консоли PowerShell.

Рис. 8. Консоль управления PowerShell

Поставщик IIS PowerShell позволяет:

  • Создание веб-сайтов, веб-приложений, виртуальных каталогов и пулов приложений.
  • Изменение простых свойств конфигурации на веб-сайтах, веб-приложениях, виртуальных каталогах и пулах приложений.
  • Добавление и изменение сложных параметров конфигурации.
  • Запрос данных времени выполнения (состояние веб-сайта, состояние пула приложений, выполнение запросов в настоящее время).
  • Выполнение расширенных задач настройки, создание скриптов и интеграция с другими оснастками и функциями PowerShell.
  • Поиск и обнаружение параметров конфигурации.

Например, можно создать пул приложений из поставщика PowerShell. Для этого требуется только указать имя.

PS IIS:\> new-item AppPools\DemoAppPool Name State ---- ----- DemoAppPool 

Расширение IIS 7 и более поздних версий

Архитектура IIS предназначена для расширения сверху вниз, что позволяет заменить любую часть встроенного набора функций пользовательской реализацией, которая соответствует вашим потребностям. В результате вместо предоставления лоскутных точек подключаемого модуля СЛУЖБЫ IIS реализуют все свои собственные функции на основе общедоступной модели расширяемости. Эта структура доступна на всей платформе, от модульного модуля веб-сервера до системы конфигурации и консоли диспетчера IIS.

Часто для требуемой веб-рабочей нагрузки требуются дополнительные функции, которые могут не входить в встроенный набор функций IIS. Или, в некоторых случаях, приложению может потребоваться настраиваемый набор функциональных возможностей, для которых встроенные функции недостаточно гибки. Так как все функции IIS основаны на общедоступных API расширяемости, вы можете заменить любой из них пользовательской реализацией, которая наилучшим образом соответствует вашим потребностям.

Расширение диспетчера IIS

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

Диспетчер IIS имеет встроенные возможности удаленного администрирования. Используя ПРОТОКОЛ HTTPS между диспетчером IIS и удаленным сервером, эта функция включает возможность определять доверенных пользователей в диспетчере IIS и безопасно хранить удостоверения в конфигурации IIS, диспетчере учетных записей безопасности Windows (SAM) или Active Directory или поставщике .NET.

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

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

Расширение схемы конфигурации

Расширение схемы конфигурации может помочь управлять приложением. Вы можете автоматизировать развертывание скрипта приложения в виртуальном каталоге или настроить роль, используемую для авторизации пользователей для подпись редактирования на уровне системы или для каждого веб-сайта или приложения. Расширение схемы предполагает добавление простого файла .xml в %SystemRoot%\system32\inetsrv\config\schema каталог на компьютере. Файл IIS_schema.xml уже присутствует в этом каталоге и может использоваться в качестве примера для настройки собственной схемы. Создайте файл с именем CUSTOM_schema.xml и настройте его, а затем зарегистрируйте раздел в applicationHost.config. Это включает в себя добавление только одной строки в applicationHost.config.

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

Рекомендуется использовать непотокобезопасную сборку PHP с iis FastCGI, доступную в PHP 5.2.1 или более поздней версии. Для каждой версии PHP существует две сборки. Одна из них является потокобезопасной, а другая — нет, которая называется непотобезопасной версией (NTS). Потокобезопасная версия предназначена для сред, в которых ядро веб-сервера может хранить обработчик PHP в памяти, выполняя несколько потоков выполнения для разных веб-запросов одновременно. Архитектура IIS и расширение FastCGI предоставляют модель изоляции, которая отделяет запросы, избавляя от необходимости в потокобезопасной версии. В NTS нет кода, который позволяет PHP управлять несколькими потоками. В результате вы увидите повышение производительности служб IIS при использовании версии NTS по сравнению с версией tread-safe.

СЛУЖБЫ IIS всегда поддерживали PHP, но таким образом, что многие реальные приложения PHP не размещались в рабочих средах. Это было связано с ограничениями в двух способах, предлагаемых службами IIS для запуска приложений PHP: с использованием протокола CGI или с помощью расширения ISAPI PHP.

Так как CGI требует отдельного процесса для каждого запроса, приложения, размещенные с помощью CGI, будут работать плохо в Windows. И наоборот, приложения PHP, использующие высокопроизводительный многопоточный интерфейс ISAPI IIS, часто страдают от нестабильности из-за отсутствия потоковой безопасности в некоторых популярных расширениях PHP.

Чтобы решить эти проблемы, команда IIS разработала компонент FastCGI. Открытый протокол FastCGI позволяет PHP и многим другим платформам приложений, которым требуется однопоточная среда (в том числе Ruby on Rails, Perl и Python) для более надежной работы в IIS. В отличие от стандартной реализации CGI, FastCGI позволяет повторно использовать процессы, поддерживая пул рабочих процессов, каждый из которых обрабатывает не более одного запроса за раз, что приводит к значительному повышению производительности. FastCGI также воспользовались преимуществами модели разработки и тестирования, ориентированной на сообщество.

Установка документа по умолчанию

СЛУЖБЫ IIS используют файл конфигурации с именем web.config. Этот файл можно разместить в любой точке приложения и использовать для включения директив веб-сервера, влияющих на этот каталог и те, которые находятся под ним. В настоящее время многие приложения распространяют файл .htaccess, который предоставляет аналогичный набор возможностей. Чтобы определить документ по умолчанию для приложения, можно использовать файл web.config следующим образом:

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

Использование модуля переопределения URL-адресов

СЛУЖБЫ IIS включают модуль перезаписи URL-адресов, состоящий из полного механизма на основе выражений для перезаписи правил. Эти правила можно настроить вручную или с помощью диспетчера IIS. Модуль переопределения URL-адресов может импортировать и преобразовывать правила mod_rewrite.

Типичное простое правило перезаписи, которое преобразует все запросы, поступающие в http.example.com , в http://www.example.com , показано в следующем коде:

      " pattern="^example\.com$" /> " />    

Использование модуля фильтрации запросов

Служба IIS использует модуль фильтрации запросов, чтобы ограничить доступ браузера к файлам или каталогам на основе указанных критериев. Модуль фильтрации URL-адресов — это мощный механизм защиты доступа к различным URL-адресам и запросам.

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

IIS 6.0 и 5.1

В более ранних версиях IIS нет модуля переопределения URL-адресов. Одним из основных способов использования этого модуля является ограничение доступа к определенным файлам и (или) каталогам. Для более ранних версий IIS можно обеспечить аналогичные средства защиты.

Ссылки для получения дополнительных сведений

  • Оптимизация производительности IIS (IIS 7).
  • Блог группы по повышению производительности Windows Server
  • 10 основных улучшений производительности в IIS 7.0.
  • Включение или отключение ведения журнала (IIS 7).
  • Выпущен модуль регулирования скорости IIS 7.0
  • Теперь выпущено регулирование скорости.
  • Настройка сжатия HTTP в IIS 7.
  • Создание решений веб-сервера с комплексной расширяемостью
  • Как приступить к расширению свойств модуля для IIS 7.0 и более поздних версий в диспетчере IIS.
  • Использование преимуществ интегрированного конвейера IIS 7.0 и более поздних версий
  • Включите проверку подлинности на основе форм (IIS 7).
  • Использование фильтрации запросов.
  • Импорт правил mod_rewrite Apache.
  • Перевод содержимого .htaccess в IIS web.config.

Настройка версии PHP и ini-файла в cPanel

Хостинговая контрольная панель cPanel предлагает пользователям гибкую и удобную работу с языком программирования PHP. Поэтому в панели имеется удобный и простой интерфейс для управления той или иной версией PHP.

Пользователям доступны такие версии PHP как 4.4, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6. 7.0, 7.1, 7.2, 7.3, 7.4, 8.0 Но стоит отметить, что список постепенно расширяется с обновлением функционала cPanel. Для того, чтобы узнать какая версия установлена на данный момент или чтобы сменить версию PHP следует зайти в cPanel и найти раздел «Программное обеспечение» (англ. Software/Services) и выбрать «Выбрать PHP версию» (англ. Select PHP Version).

Выбор PHP версии

Затем можно увидеть информацию о текущей версии PHP. Также можно наблюдать большой перечень расширений (модулей), среди которых некоторые включены и отмечены галочкой.

Информация о текущей версии PHP

Сменить версию PHP очень просто. Следует выбрать из списка интересующую версию и нажать «Сделать текущей».

Настройка php.ini в cPanel

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

PHP-сценарий (PHP-скрипт) – скрипт на языке PHP, представляет из себя набор команд и инструкций. Как правило, используется для создания веб-приложений и сайтов, однако на этом его область применения не ограничивается. В случае, использования в web, запрос от клиента поступает к программе-веб серверу, которая запускает выполнение соответствующего php-скрипта интерпретатором php, и результат выполнения (обычно это html-код) возвращает клиенту (браузеру).

Когда безопасный режим включён, PHP проверяет, совпадает ли owner/владелец текущего скрипта с владельцем файла, которым оперирует функция работы с файлами. И если владельцы не совпадают, доступ будет запрещен.

Опции php.ini

Как было сказано, cPanel предоставляет простой интерфейс для управлением PHP. Интерфейс разделен на 2 подменю:

2) Расширения (модули) PHP.

Ниже можно увидеть таблицу опций PHP с названием команд и их значениями.

Команда Описание Значение
asp_tags Данная опция позволяет серверу содержать в коде PHP тэги вместо стандартных тегов . Если эта опция выключена, то PHP скрипт с ASP тэгами не будет работать корректно. ON/OFF
file_uploads Сервер разрешает сценариям PHP получать файлы через HTTP. ON/OFF
include_path Данная опция нужна для того, чтобы при отсутствии указания пути в самом php файле (php.ini), интерпретатор смог найти библиотеки, которые хранят файлы, требуемые сценарием для использования. Следует указать путь
max_execution_time Количество секунд работы PHP Сценария перед тем, как сценарий будет завершен. Этот лимит предотвращает сбои в работе сервера из-за «зависших сценариев», которым требуется время для выполнения.К примеру, бесконечный цикл, вызванный ошибкой в скрипте. Следует указать время в секундах
max_input_time Количество секунд, которое Сценарий PHP использует для обработки новой информации, такой как загрузки файла. Этот лимит предотвращает замедление работы сервера перегруженным сценарием. Следует указать время в секундах
memory_limit Максимальный объем памяти в Мб, доступный php-скрипту. Этот предел предотвращает размещение доступной памяти сервера сценариями с большим кодом. Когда значение равно -1, нет никакого предела памяти. Следует указать количество мегабайт
register_globals Используется для сценария PHP, требующего, чтобы это опция была включена. Внимание: может сделать сайт небезопасным.Рекомендуется не включать эту опцию. Эта функция была критикована в версии PHP 5.3.0 и удалена в PHP 5.4.0. ON/OFF
safe_mode Эта опция гарантирует, что пользователь, который включает Сценарий PHP имеет права выполнить все задачи, которые указаны в самом сценарии. Например, если сценарий разработан, чтобы изменять файлы, то пользователю нужны права на изменения файлов.Эта функция была критикована в PHP 5.3.0 и удалена в PHP 5.4.0. ON/OFF
session.save_path Когда посетитель получает доступ к веб-сайту, веб-сервер создаёт уникальный ID пользователя. Затем веб-сервер использует ID, чтобы хранить информацию о сеансе пользователя, или время, проведенное на веб-сайте. Директива Thesession.save_path описывает, где эта информация хранится. (PHP позволяет создавать определенный веб-контент для данного посетителя и сеанса.)Опция session.save_path описывает путь, где будут сохраняться файлы сессий. Если в диапазоне значений функции есть число, то оно относится к числу каталогов, в которых веб-сервер будет хранить информацию. Если у сайта много трафика, для сервера проще сохранять и получать информацию, если веб-сервер распределяет данные сеанса среди нескольких папок. Диапазон значений также включает имя каталога, который содержит подкаталоги, в которых хранится информация о сеансе. По умолчанию /tmp
upload_max_filesize Ограничение максимального размера файла, загружаемого на сервер. Указывается в мегабайтах. Следует указать количество мегабайт
allow_url_fopen Позволяет сценарию PHP получать данные от удаленных источников по FTP или HTTP. Эта опция – большая угроза безопасности, таким образом не рекомендуется включать ее без необходимости. ON/OFF
display_errors Если опция включена, ошибки и предупреждения будут включены в результат выполнения скрипта (будут включены в сгенерированый html, и отображены на странице сайта, если в скрипте не переопределена данная опция). ON/OFF
error_reporting Уровень ошибок в php, которые будут выводиться на сайте: предупреждения, ошибки, использование функций которые помечены устаревшими. Функция работает, когда включена опция display_errorsPHP обладает большой системой уровней ошибок. Уровень ошибки определяется согласно константе или с помощью битовой маски. -E_ALLE_ALL & -E_Notice E_ALL
log_errors Опция отвечает за создание записей в журнале ошибок. По умолчанию все ошибки регистрируются в журнал ошибок сервера. error_log использует директиву, чтобы определить путь к файлу журнала, то есть где хранится журнал с ошибками. ON/OFF
mail.force_extra_parameters Дополнительные параметры для почты: функция используется для отправки почты. Например, чтобы использовать пользовательские настройки отправки, следует редактировать файл: -C /dir/conf.cf На виртуальном хостинге нет возможности изменять данные параметры. No value
max_input_vars Максимальное количество входящих параметров в запросе. Следует указать количество символов
open_basedir Список директорий, которые PHP может использовать для своей работы. Если файл будет вне указанных директорий, то Сценарии PHP откажутся открывать его. Чтобы разделить директории, используется двоеточие.Например: /dir/upload:/usr/tmp no value
post_max_size Максимальный размер данных в байтах, которые могут быть отправлены методом POST. Как правило, должно быть больше, чем upload_max_filesize и меньшим, чем memory_limit. Используются ярлыки для значений байта: K (kilo), M (mega), и G (giga)Например, 16M. Следует указать количество символов в мегабайтах
safe_mode_exec_dir Сценарии могут запускать внешние программы, расположенные только в определенной директории.Например: /dir/external no value
safe_mode_include_dir Сценарий пытается получить доступ к некоторым файлам, то файлы из этой директории обойдут безопасность (UID/GID) проверки. no value
short_open_tag Позволяет использовать краткие теги для работы с PHP вместо или

ON/OFF
suhosin.get.max_value_length Ограничение общей длины GET запроса Следует указать цифровое значение
suhosin.post.max_vars Максимальное количество переменных во входящем POST запросе
suhosin.request.max_varname_length Максимальное количество переменных символов в названии входящего запроса.
suhosin.request.max_vars Максимальное количество переменных во входящем запросе.

Важно: Данная инструкция подходит только под виртуальный хостинг (как его еще называют shared-хостинг). Если вы задумались о том, как поменять хостинг сайта, например, вас интересует аренда сервера в Европе или США, то есть вероятность, что уже включенные PHP-настройки могут не поддерживаться на новом сервере. То же самое возможно, если вы решите купить сервер для хостинга у другого хостера, поскольку конфигурации серверов могут значительно отличаться.

Ищете, где купить SSL-сертификаты? У нас вы найдете лучшие предложения от Центров сертификации Comodo, GeoTrust и Symantec.

Читайте также:

  • Что такое php cgi

Что такое PHP: для чего нужен и где используется?

Что такое PHP: для чего нужен и где используется?

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

Что такое PHP простыми словами?

Что такое PHP

И так, давайте разберемся для начала, что такое PHP? На сегодняшний день языков программирования очень много и каждый из них используется для решения разных задач веб-программистами. Недавно мы рассказывали простым языком кто такой веб-программист и какими навыками он должен обладать. Именно этот специалист должен знать несколько языков программирования, как Java, JavaScript, HTML, PHP, CGI, Perl. Среди большого количества языков программирования есть те, которые чаще всего используются. Язык программирования PHP — является одним из самых популярных и уже много лет сохраняет свою позицию благодаря своей простоте и гибкости.

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

Для чего нужен и где используется PHP?

Для чего нужен и где используется PHP

Для чего нужен PHP и где используется этот уникальный язык программирования? Если говорить простыми слова — PHP применяется для создания сайтов и веб-приложений любой сложности: от современного лендинга до интернет-магазина с товарами. Он нужен для того, чтобы решать определенные задачи, с которыми не могут справиться другие языки, а также его использование облегчает работу, потому что он достаточно простой и гибкий. Его популярность обусловлена количеством важных встроенных функций для работы с веб-серверами, СУБД и файловыми системами. Например, на PHP работают Facebook и ВКонтакте,Wikipedia, Flickr и Yahoo. Рассмотрим задачи, которые выполняет PHP:

  • Обработка форм. Практически у каждого сайта есть определенная форма, с помощью которой пользователи регистрируются, входят в личный кабинет, оформляют или оплачивают заказ. PHP помогает обработать данные, которые вносятся в эту форму. Например, если вы хотите сделать форму обратной связи на сайте, то можно использовать не только языки программирования, но этот способ будет более надежным.
  • Базы данных. PHP используется для сохранения информации о пользователе в единой базе данных. Например, при авторизации или регистрации на сайте нужно вводить логин и пароль, с помощью PHP можно понять есть ли такая комбинация в базе данных.
  • Динамичные страницы. На PHP достаточно создать один файл, который будет отвечать за все страницы сайта. Например, если вы захотите внести какие-то изменения в дизайн и оформление сайта. Это экономит кучу времени и не нужно каждый раз прописывать код заново.
  • Сессии и куки. Еще одна задача, для которой используется PHP. Многие сайты помещают в куки пользователя данные о посещениях и просмотренных товарах, услугах. Преимущество этого в том, что база данных не забивается и часть информации хранится на компьютере пользователя.

Это лишь основные задачи, для которых используется данный язык программирования, он имеет много преимуществ и достаточно прост для изучения и применения.

Что такое PHP файл?

Что такое PHP файл и в чем его особенности? Файл PHP — это веб-страницы, который содержит в себе язык программирования PHP. Он содержит гипертекстовый код препроцессора и часто используется как файл веб-страницы, которая генерирует HTML из движка PHP, работающего на веб-сервере.

Что такое PHP файл

Открыть этот файл можно с помощью специального ПО, либо в окне браузера. В браузере он открывается на сервере: OpenServer, Denwer, Xammp. На компьютере можно использовать специализированные редакторы или Блокнот, так как php файл открывается в текстовом формате.

Список некоторых программ, которые могут открывать PHP файлы:

  • Zend Studio;
  • Notepad++;
  • WampServer;
  • Web browsers.

Чем отличается PHP от HTML?

В чем отличие PHP от HTML? Эти два языка многие путают, так как они часто используются вместе, но предназначены для выполнения разных задач. Давайте разберемся! HTML — это язык разметки на стороне клиента, а PHP — это язык программирования на стороне сервера.

Чем отличается PHP от HTML

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

Таким образом, PHP позволяет сделать HTML-страницы более динамичными. Например, если вы создаете сайт для бизнеса, очень важно сделать крутой сайт, чтобы заинтересовать больше клиентов. Поэтому с помощью PHP можно сделать простой статичный HTML сайт более интересным и интерактивным.

Основные отличия HTML и PHP:

  • PHP — скриптовый язык программирования, HTML — язык разметки;
  • Результатом выполнения кодов PHP является HTML, но не наоборот;
  • Файлы HTML выдаются без изменений, файлы PHP обрабатываются сервером;
  • Сайты на PHP динамичны, сайты на HTML статичны. Статические страницы сайта нельзя изменить. Более подробно про разницу между динамическим и статическим контентом на сайте мы рассказывали ранее;
  • Сайты на HTML проще и минимально нагружают сервер;
  • Сайты на PHP интерактивны.

Чем отличается PHP от Javascript?

В чем отличия этих двух популярных языков программирования? Javascript и PHP являются универсальными языками, которые подходят для веб-разработки, и пользуются большой популярностью по всему миру. Они отличаются целями применения и тем, что Javascript — это язык сценариев на стороне клиента, а PHP — язык сценариев на стороне сервера.

Чем отличается PHP от Javascript

Однако сейчас Javascript способен обслуживать не только клиентские, но и серверские цели благодаря выпуску Node.js. Это позволяет создавать веб-сайты, мобильные приложения и даже игры, используя один язык — Javascript. Поэтому у Javascript больше возможностей, но давайте разберемся, какой язык имеет больше преимуществ.

Что лучше: PHP или Javascript?

Какой язык программирования лучше и имеет больше преимуществ? Начнем с того, что PHP бесплатный, гибкий и простой язык, которому сможет научиться даже новичок. К примеру, если вы хотите стать веб-дизайнером, то знание PHP будет вашим преимуществом, и вы с легкостью найдете всю информацию для его изучения даже в интернете. Он также более безопасный по сравнению с Javascript, так как его код больше защищен.

Что лучше PHP или Javascript

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

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

Статьи

Обходить сеть позволяет программа Virtual Private Network (VPN). Что это такое и как пользоваться данным сервисом, расскажем в данной статье.

Бизнес идеи 2022 года с минимальными вложениями

Чтобы ваши бизнес — идеи в 2021 году приносили только прибыль, значит Вы на правильном пути, что зашли на нашу страничку.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *