По умолчанию Plesk использует веб-сервер Apache (http://en.wikipedia.org/wiki/Apache_HTTP_Server) для доставки страниц ваших сайтов до клиентов (например, до браузеров, которыми пользуются посетители для просмотра вашего сайта). Для большей производительности веб-сервер Apache работает в связке с другим веб-сервером — nginx. Вы также можете использовать только nginx.
Настройки веб-сервера по умолчанию задаются администратором сервера (хостинг-провайдером). Эти настройки определяют то, как веб-серверы должны обрабатывать различные типы файлов, как использовать SSL/TLS, где хранить файлы журналов и так далее.
Однако вы (как владелец сайта) можете индивидуально настроить веб-сервер для своего сайта. Например, добавить тип стартовых страниц, ограничить доступ к сайту и так далее.
Примечание: Вы можете менять настройки веб-сервера для своих сайтов, если ваша подписка включает соответствующее право.
Изменение настроек Apache и nginx
Некоторые настройки Apache и nginx можно изменить на уровне домена. Они находятся на странице Сайты и домены > имя домена > Настройки Apache и nginx. Эти настройки делятся на две группы:
-
Общие настройки Apache
-
Настройки nginx
Изменение типов MIME
Типы MIME сопоставляют расширения файлов с типами файлов, чтобы веб-браузеры понимали, как следует обрабатывать определенные типы файлов. Например, следующий тип MIME
text/plain .txt
сообщает веб-браузеру о том, что все файлы с расширением .txt
нужно обрабатывать как простой текст. По умолчанию большинство типов MIME уже предопределены. Однако если вы обнаружите, что страницы вашего сайта не могут быть корректно обработаны веб-браузерами из-за использования нестандартных расширений, вам надо настроить один или несколько персональных типов MIME.
Чтобы настроить персональные типы MIME:
- Откройте страницу Сайты и домены > Настройки Apache & nginx.
- В разделе Типы MIME выберите Ввести свое значение.
- Введите или удалите нужные типы MIME и нажмите OK.
Настройка обработчиков Apache
Обработчики Apache сообщают веб-серверу о том, как надо обрабатывать файлы с определенными расширениями. Например, следующий обработчик
cgi-script .cgi
сообщает веб-серверу о том, что все файлы с расширением .cgi
надо обрабатывать как CGI-скрипты. По умолчанию обработчики для файлов с распространенными расширениями уже предопределены. Однако если вы хотите изменить обработчик для файлов с определенным расширением, вам надо настроить один или более персональных обработчиков.
Чтобы настроить персональные обработчики:
- Откройте страницу Сайты и домены > Настройки Apache & nginx.
- В разделе Обработчики выберите Ввести свое значение.
- Введите или удалите нужные заголовки и нажмите OK.
Запрет доступа к сайту
Вы можете запретить доступ на ваш сайт некоторым посетителям. Вы можете запретить доступ:
- С определенных IP-адресов (например,
192.168.1.110
) - С подсетей IP-адресов (например,
127.0.0.1/8
) - Владельцам определенных доменных имен (например,
example.com
) - Всем (с помощью символа «
*
»)
При попытке зайти на сайт заблокированные посетители получат сообщение об ошибке «403 Forbidden».
Чтобы настроить доступ к сайту:
- Откройте страницу Сайты и домены > Настройки Apache & nginx.
- В разделе Запретить доступ к сайту выберите Ввести свое значение.
- Введите или удалите нужные IP-адреса, подсети или доменные имена.
- Если вы заблокировали подсеть, но хотите разрешить одному или более IP-адресам этой подсети доступ к вашему сайту, введите эти адреса в поле Исключения.
- Нажмите OK.
Настройка стартовых страниц
Каждый раз, когда посетитель вашего сайта открывает URL-адрес, который обращается к папке, а не к определенному файлу (например, www.example.com
или www.example.com/example
вместо www.example.com/index.html
), Apache ищет стартовую страницу, которую надо открыть. По умолчанию Apache ищет следующие файлы (в указанном порядке):
index.html
index.cgi
index.pl
index.php
index.xhtml
index.htm
index.shtml
Если все семь файлов присутствуют в папке, посетитель, обратившейся к ней, увидит содержимое файла index.html
. Если файл index.html
отсутствует, Apache ищет вместо него файл index.cgi
и так далее. Если ни один подходящий файл не найден, по умолчанию отображается ошибка «403 Forbidden».
Plesk позволяет выбрать, какой файл стартовой страницы будет искать Apache при обращении посетителя к вашему сайту:
- Вы можете изменить порядок, в котором Apache ищет стартовые страницы (например, вам может понадобиться, чтобы он по умолчанию искал файл
index.php
вместоindex.html
). - Вы можете добавлять в список имена файлов стартовых страниц или удалять их (например, если файл стартовой страницы вашего сайта называется
hello.php
, вы можете настроить Apache так, чтобы он открывал его по умолчанию).
Чтобы настроить файлы стартовых страниц:
- Откройте страницу Сайты и домены > Настройки Apache & nginx.
- В разделе Стартовые страницы выберите Ввести свое значение.
- Введите или удалите нужные имена файлов стартовых страниц в том порядке, в котором Apache должен их искать, и нажмите OK.
Настройка заголовка «Expires»
Заголовок expires
в Apache указывает, как долго веб-браузеры должны хранить кэшированные копии содержимого вашего сайта до того, как заново запросить содержимое с сервера. Настройка этого заголовка может уменьшить нагрузку на сервер и ускорить работу вашего сайта.
Например, вы можете установить период истечения хранения содержимого 10 дней. Посетитель открывает ваш сайт, запрашивая страницу index.html
. Веб-браузер посетителя хранит в кэше копию этой страницы, и в течение последующих 10 дней он должен открывать кэшированную копию при каждом обращении посетителя к сайту. На одиннадцатый день, если к странице снова было сделано обращение, браузер должен заново запросить страницу с сервера, так как у кэшированной копии истек строк хранения.
При настройке заголовка expires
для сайтов с динамическим содержимым мы рекомендуем выбрать опцию использовать заголовок Expires только для статических файлов. В противном случае все содержимое, включая динамическое, будет сохраняться в кэше браузера посетителя до истечения периода хранения. Такое поведение не рекомендуется, так как динамическое содержимое, как правило, часто обновляется.
Чтобы сконфигурировать заголовок «Expires»:
- Откройте страницу Сайты и домены > Настройки Apache & nginx.
- В разделе Expires выберите Ввести свое значение.
- Укажите нужный период истечения срока хранения (рекомендуемая длительность периода – 14 дней).
- Если ваш сайт содержит динамическое содержимое, удостоверьтесь, что выбрана опция использовать заголовок Expires только для статических файлов.
- Нажмите OK.
Примечание: Если включен nginx, только файлы, обслуживаемые Apache, будут иметь заголовок expires. Если выбрана опция Интеллектуальная обработка статических файлов, выбор того, какие файлы считаются статическими, будет определяться конфигурациями Apache и nginx по умолчанию. Если выбрана опция Обрабатывать статические файлы с помощью nginx, и указаны какие-либо файловые расширения, файлы с указанными расширениями будут обрабатываться с помощью nginx.
Настройка дополнительных заголовков
Вы можете настроить дополнительные заголовки для HTTP-ответов согласно следующему шаблону:
Имя : Значение
Заголовки HTTP-ответов содержат информацию о запрошенной странице, необходимую для совершения веб-браузерами различных действий. Например, следующий заголовок защитит посетителей вашего сайта от кликджекинга:
X-Frame-Options: DENY
Чтобы настроить дополнительные заголовки:
- Откройте страницу Сайты и домены > Настройки Apache & nginx.
- В разделе Дополнительные заголовки выберите Ввести свое значение.
- Введите или удалите нужные заголовки и нажмите OK.
Запрет на открытие символьных ссылок
По умолчанию в Apache можно открывать символьные ссылки. Если ваш сайт не использует символьные ссылки, мы рекомендуем отменить эту возможность, так как это может быть рискованно в плане безопасности.
Чтобы запретить Apache открывать символьные ссылки:
- Откройте страницу Сайты и домены > Настройки Apache & nginx.
- Поставьте галочку Запретить открывать символьные ссылки и нажмите OK.
Хостинг с использованием только nginx
В Plesk для Linux вы можете размещать сайты, используя комбинацию nginx и PHP-FPM. В этом случае запросы к сайтам не передаются в Apache, а вместо этого обслуживаются nginx. Хостинг только с nginx является удачным выбором для сайтов на PHP, хотя он также хорошо подходит для статических сайтов и серверов приложений. Вы можете настроить отдельные сайты на обслуживание только nginx без остановки или выключения Apache, и это никак не повлияет на сайты, обслуживаемые Apache.
Примечание: Службы Plesk (например, Webmail) продолжают работать с использованием Apache, и на них не влияет переключение на хостинг только с nginx.
Чтобы включить/выключить хостинг только с nginx для домена:
- Откройте страницу Сайты и домены > Настройки Apache & nginx.
- В разделе Настройки nginx уберите галочку Режим прокси.
- Нажмите Применить.
Чтобы вернуться к хостингу с использованием Apache совместно с nginx, поставьте галочку Режим прокси.
Известные ограничения
Когда вы переключаете домен на хостинг только с nginx, возникают следующие ограничения:
- Обмен файлами становится недоступен.
- Поддержка SSI, Perl и Python становится недоступна.
- Вы можете использовать только обработчик PHP «Сервер приложений FPM с nginx».
Настройка обработки статических файлов
По умолчанию на серверах Plesk для Linux nginx и Apache работают совместно, при этом Apache обрабатывает динамическое содержимое, а nginx используется как прокси-сервер для обработки статического содержимого. Эта схема обеспечивает оптимальное использование ресурсов сервера и позволяет Plesk быстрее обслуживать запросы к сайтам. Однако в Plesk можно выбрать, как должно быть обработано статическое содержимое сайтов.
Обработка всего статического содержимого с помощью nginx
Такое поведение используется в Plesk для Linux по умолчанию. Как только поступает запрос на статическое содержимое, Apache только определяет местоположение соответствующего файла, а nginx находит и обрабатывает этот файл.
Чтобы обрабатывать все статическое содержимое с помощью nginx:
- Перейдите в раздел Сайты и домены > Настройки Apache и nginx и прокрутите вниз до раздела «Настройки nginx».
- Выберите опции Режим прокси и Интеллектуальная обработка статических файлов.
- Удостоверьтесь, что опция Обрабатывать статические файлы с помощью nginx не выбрана.
- Нажмите OK.
Обработка с помощью nginx только файлов с определенными расширениями
При необходимости вы можете сделать так, чтобы только файлы с определенными расширениями обрабатывались как статический контент с помощью nginx. Остальные файлы, которые обычно классифицируются как статическое содержимое, будут обрабатываться с помощью Apache. Важно отметить, что в этом случае запросы к файлам с указанными расширениями вообще никогда не достигают Apache. Следовательно, они не проходят через обработчики Apache. Это означает, к примеру, что правила перезаписи директив .htaccess
не применяются.
Чтобы обрабатывать только определенное содержимое с помощью nginx:
- Перейдите в раздел Сайты и домены > Настройки Apache и nginx и прокрутите вниз до раздела «Настройки nginx».
- Выберите опции Режим прокси и Интеллектуальная обработка статических файлов.
- По умолчанию некоторые расширения статических файлов уже заданы в поле Обрабатывать статические файлы с помощью nginx. Вы можете добавить или удалить нужные расширения. Используйте пробел или символ «|» в качестве разделителя для расширений.
- Нажмите OK.
Примечание: Включение опции “Обрабатывать статические файлы с помощью nginx” автоматически выключает режим “Интеллектуальная обработка статических файлов”, даже если стоит соответствующая галочка.
Обработка всего статического и динамического содержимого с помощью Apache
При необходимости вы можете отключить nginx и настроить Apache на обработку всего содержимого, как статического, так и динамического. Это может быть полезно в некоторых случаях, например, для диагностики неисправностей nginx. Мы не рекомендуем использовать Apache для обработки всего содержимого на рабочих сайтах.
Чтобы обрабатывать все статическое и динамическое содержимое с помощью Apache:
- Перейдите в раздел Сайты и домены > Настройки Apache и nginx и прокрутите вниз до раздела «Настройки nginx».
- Поставьте галочку Режим прокси.
- Снимите галочки Интеллектуальная обработка статических файлов и Обрабатывать статические файлы с помощью nginx.
- Нажмите OK.
Настройка кэширования с помощью nginx
Настройка кэширования с помощью nginx позволяет прокси-серверу nginx кэшировать определенное динамическое содержимое сайта. Кэшированные данные хранятся в течение короткого периода времени (обычно не дольше нескольких секунд). Это может помочь сократить время загрузки сайта и уменьшить нагрузку на сервер.
Настройка кэширования с помощью nginx рекомендуется только для сайтов, обладающих определенными свойствами (например, для популярных блогов или новостных сайтов):
- Высокий трафик.
- Обновление контента каждые несколько секунд.
Настройка кэширования с помощью nginx может быть бесполезной и даже опасной для сайтов со следующими характеристиками:
- Умеренный или низкий трафик.
- Обновление содержимого реже, чем раз в несколько секунд.
- Использование персонализированных данных (например, данных о географическом местоположении посетителя сайта или содержимом его корзины).
Чтобы включить кэширование с помощью nginx:
- Откройте страницу Сайты и домены > Настройки Apache & nginx.
- В разделе “Настройки nginx” поставьте галочку “Включить кэширование с помощью nginx”.
- (Необязательно) Вы можете изменить настройки кэширования с помощью nginx. Если вы не знакомы с кэшированием с помощью nginx, мы рекомендуем вам оставить настройки по умолчанию. Неправильная установка этих настроек может привести к снижению производительности сайта и сервера.
- Нажмите OK.
Настройки кэширования с помощью nginx
Настройки кэширования с помощью nginx, отображаемые в интерфейсе Plesk, соответствуют директивам nginx и некоторым записям в конфигурационном файле nginx. Подробности можно увидеть в таблице ниже.
Настройка кэширования с помощью nginx в интерфейсе Plesk | Соответствующая директива nginx | Соответствующий параметр nginx (если он есть) |
---|---|---|
“Размер кэша“ | proxy_cache_path | max_size |
“Время ожидания кэша“ | proxy_cache_valid | |
“Ключ кэша“ | proxy_cache_key | |
“Кэшировать запросы с cookie-файлами“ | Указывается в конфигурационном файле nginx | |
“Запретить кэширование для адресов“ | Указывается в конфигурационном файле nginx | |
“Не кэшировать, если” | proxy_cache_bypass | |
“Возвращать устаревшие записи кэша” | proxy_cache_use_stale |
Примечание: Для сайтов, использующих nginx вместе с обработчиком PHP-FPM, директивы proxy_cache*
заменяются на fastcgi_cache*
. Например, настройка “Ключ кэша“ соответствует директиве fastcgi_cache_key
вместо proxy_cache_key
.
Настройка “Кэшировать запросы с cookie-файлами“
По умолчанию nginx не кэширует HTTP-запросы, которые содержат HTTP-заголовок Сookie . Вы можете изменить это поведение и настроить в nginx кэширование HTTP-запросов, содержащих некоторые cookie-файлы, указав имена этих файлов в поле “Кэшировать запросы с cookie-файлами”. Например, если вы укажете имена cookie-файлов _ga
и _gid
, nginx будет кэшировать только те HTTP-запросы, заголовок Сookie которых содержит имена _ga или _gid
. Nginx не будет кэшировать HTTP-запросы с заголовком Сookie, содержащим хотя бы одно имя cookie-файла, не указанное в этом поле.
Настройка “Запретить кэширование для адресов“
Вы можете сократить нагрузку на сервер, запретив nginx кэшировать определенное веб-содержимое (например, динамическое содержимое, которое нечасто просматривается). Для этого укажите необходимые $request_uri в поле “Запретить кэширование для адресов”. Например, если вы укажете адрес /wp-admin/
, nginx не будет кэшировать содержимое, относящееся к панели управления администратора WordPress.
Примечание: Если вы хотите указать несколько значений в поле “Кэшировать запросы с cookie-файлами“ или “Запретить кэширование для адресов“, укажите каждое из них в отдельной строке.