Как отключить eAccelerator, OPcache или Xcache? Настройка битрикс opcache
Ручная установка и настройка php модулей, для оптимальной работы сайтов на CMS битрикс, средствами консоли управления сервером
На нашем блоге публиковались статьи, в которых описана пошаговая инструкция процесса настройки сервера для работы продуктов на платформе Битрикс, с помощью панели управления. Но не всегда нужные нам модули доступны в панели управления для активации одним щелчком, и не всегда панель присутствует на сервере, в связи с этим, в данной инструкции мы рассмотрим как установить данные модули средствами консоли управления используя доступ с помощью ssh.
И так приступим, рекомендуемые модули, которые не входят в стандартную конфигурацию php – это memcache и его аналог, но принципы которого основаны немного иначе – ZendOpcache. Перед установкой кеширующих модулей необходимо убедится в отсутствии других аналогичных модулей во избежание конфликтов в их работе, для этого в консоли введем следующую команду:
# php -m |grep -i -e “cache” -e “apc”
Если вывод будет отсутствовать – значит в системе не установлены кеширующие модули, в нашем случае присутствует Xcache с его компонентами:
Или аналогичная проверка с панели управления, из под root (1) пользователя переходим в раздел РНР (2) после в настройку расширений для текущей версии РНР (3) и вводим фильтр слово (4):
Определив присутствующие в системе модули кеширования, приступаем к их отключению для установки нужных нам:
С панели управления все выполняется довольно просто, их выделяем (1) и нажимаем отключить (2)
Для проведения работ через панели достаточно купить виртуальный хостинг, в таком случае у Вас будет доступ к панели cPanel или ISPmanager, при аренде VPS VDS сервера – панель необходимо будет оплатить отдельно. С консоли данный процесс же немного сложней, для начала определяем расположение конфигурационного файла нашего модуля, для этого используем следующую команду подставляя вместо Xcache название найденного у Вас модуля, расширение “.so” необходимо оставить:
# grep -rli ‘XCache.so’ /etc/php*
В нашем случае, данным файлом оказался конфигурационный файл панели управления, по скольку мы проводим данную процедуру на сервере с панелью, в случае же без панели управления данный файл вероятней всего имел бы путь : /etc/php.d/xcache.ini, мы получили же следующее:
После чего открываем через удобный Вам редактор, найденный файл:
# vi /etc/php.d/ispmgr.ini
И комментируем ( на начале строки вставляем символ “;”, который отменяет действие строки) строку, где указано включение модуля, для редактировния строки в утилите vi наведя курсор в нужную строку нажимаем “i” после ставим нужный символ в начале строки и нажимаем “Esc” как показано на изображении:
После чего вводим комбинацию “:wq”, тем самым выполняя сохранение и закрытие файла., после проверяем включение модуля и перезагружаем службу веб-сервера, чтобы изменения вступили в силу:
# php -m |grep -i -e “cache” -e “apc”
# /etc/init.d/httpd restart
(мы выполняем данные манипуляции на все той же рекомендуемой нами ОС Centos, в случае с другими ОС данные команды могут отличаться, а именно перезагрука веб сервера может иметь вид
# /etc/init.d/apache restart )
И приступаем непосредственно к установке нужных нам модулей, для начала обновим пакеты с подключенных репозиториев:
# yum update
После чего выполняем установку командой:
# yum install php-opcache php-pecl-memcache* memcache*
В результате у нас возник конфликт пакетов, для этого убедившись, что конфликтуючий модуль не используется ни одним сайтом на Вашем сервере, можем его удалить, для этого выполним команду:
# yum remove php-xcache*
После повторяем :
# yum install php-opcache php-pecl-memcache* memcache*
После завершения установки необходимо выполнить ряд следующих команд:
Включаем автозагрузку службы memcached :
# chkconfig memcached on
Запускаем службу memcached :
# /etc/init.d/memcached start
Перезагружаем веб сервер:
# /etc/init.d/httpd restart
Проверяем наличие кеширующего модуля php:
# php -m |grep -i -e “cache” -e “apc”
В итоге Вы должны увидеть следующие результаты:
Далее переходим в административную панель управления сайтом, для активации рекомендуемой опции композитного сайта, для оптимальной работы которой мы и производили установку memcache , переходим в меню композитного сайта или по ссылке:
http://Ваш_сайт/bitrix/admin/composite.php?lang=ru , где устанавливаем следующие параметры (1) включаем композитный сайт, устанавливаем хранение кеша в memcache (2), проверяем соединение с портом memcache (3) и сохраняем (4) :
Ну и разумеется заключительный этап, проверяем производительность и оценку системы:
Как видите, производительность системы была оценена в 85,97 баллов.
Также полезной станет статья по настройке сервера с панелью ISPmanager5 под 1С Битрикс, детальнее по ссылке.
Если у Вас возникнут вопросы в процессе настройки, обращайтесь в нашу круглосуточную службу технической поддержки, используя тикет систему или онлайн чат. Сотрудники HyperHost™ всегда будут рады Вам помочь!
Приятной работы!
4697 раз(а) 6 Сегодня просмотрено раз(а)
hyperhost.ua
Как отключить eAccelerator, OPcache или Xcache? | REG.RU
eAccelerator
Отключить полностью eAccelerator нельзя. К сожалению, внесение директив в php.ini также не поможет — большинство известных нам CMS смотрят на само наличие eAccelerator на сервере. Удалить eAccelerator тоже не представляется возможным — для части клиентов его наличие является необходимым.
Если ваш проект работает некорректно с eAccelerator, в качестве решения проблемы мы рекомендуем использовать сборку PHP c OPcache или Xcache:
OPcache и Xcache
Отключение OPcache или Xcache происходит в конфигурационном файле php.ini.
Откройте панель управления хостингом: Как открыть панель управления хостингом и следуйте дальнейшей инструкции для вашей панели управления:
ISPmanager 4
1перейдите в Менеджер файлов, далее в папку php-bin: 2кликните два раза на файл php.ini — тем самым вы его откроете на редактирование. Обратите внимание: чтобы вы смогли внести изменения в файл, права на него должны стоять «644». Изменить права на файл можно кликнув Атрибуты:3запишите в файл строку, в зависимости от того, что именно вам необходимо отключить. После внесения изменений закройте и сохраните файл.
# вам необходимо отключить OPcache opcache.enable = Off # вам необходимо отключить Xcache xcache.cacher = OffВнимание
Чтобы изменения вступили в силу, необходимо, чтобы web-сервер перечитал php.ini. Самый простой способ — это сменить версию PHP на отличную от текущей, после чего вернуть прежнюю версию. Как сменить версию PHP.ISPmanager 5
1перейдите в Менеджер файлов, далее в папку php-bin: 2кликните два раза на файл php.ini — тем самым вы его откроете на редактирование. Обратите внимание: чтобы вы смогли внести изменения в файл, права на него должны стоять «644». Изменить права на файл можно кликнув Атрибуты:3запишите в файл строку, в зависимости от того, что именно вам необходимо отключить. После внесения изменений закройте и сохраните файл.
# вам необходимо отключить OPcache opcache.enable = Off # вам необходимо отключить Xcache xcache.cacher = OffParallels Plesk Onyx 17
1перейдите в раздел Файлы, далее в папку php-bin:
2кликните на строке рядом с названием файла php.ini и выберите Редактировать как текст или Редактировать как код:
Обратите внимание: чтобы вы смогли внести изменения в файл, права на него должны стоять «rwx rw- rw-». Вы можете кликнуть по этой ссылке и изменить права, если у вас они отличаются (при изменении поставьте галочки в колонке «Запись»).
3выберите строку кода (opcache.enable = Off или xcache.cacher = Off) в зависимости от того, какое расширение вы хотите отключить, и запишите в открывшемся редакторе. Сохраните изменения и закройте файл.
# вам необходимо отключить OPcache opcache.enable = Off # вам необходимо отключить Xcache xcache.cacher = OffcPanel
# вам необходимо отключить OPcache opcache.enable = Off # вам необходимо отключить Xcache xcache.cacher = OffВнимание
Чтобы изменения вступили в силу, необходимо, чтобы web-сервер перечитал php.ini. Самый простой способ — это сменить версию PHP на отличную от текущей, после чего вернуть прежнюю версию. Как сменить версию PHP.www.reg.ru
Оптимизация ISPmanager под проекты на Битриксе или как я скрестил ISPmanager и VMBitrix (Битрикс окружение) / Хабр
Битриксовый скрипт restore.php в режиме Apache MPM-ITK падает с ошибкой short_open_tag parameter must be turned on in php.ini Происходит это из-за неправильно использования условия if в этом скрипте. Проблема существует, потому что во всех остальных режимах php она не модулируется, но я уже связался с разработчиками 1С-Битрикс и они должны будут исправить проблему (другой вопрос когда они это сделают). Если кого-то интересуют подробности бага — отвечу в комментарияхДля вашего удобства, всё решение оформлено в полностью автоматические скрипты и заранее подготовленные конфигурационные файлы.
Рассматривается следующий сценарий:
- Вы установили чистую CentOS 6.6 x86_64
- Установили ISPmanager 4/5, следуя официальным инструкциям
- В разделе «Возможности» панели ISPmanager 4/5 активировали Nginx
Далее можно приступать к самой оптимизации: (все ссылки в конце публикации)
- запускаем «bitrix-env_5.1.2_patched_2.sh»
- копируем скрипт «isp_patch_V0.x.sh» вместе с распакованным архивом «patch_filesV0.1.zip» в произвольную директорию на сервере
- запускаем «isp_patch_V0.x.sh»
Поздравляю, ваш сервер с ISPmanager 4/5 готов для работы с проектами на Битрикс
Осталось только развернуть сайт на свежем домене: (все ссылки в конце публикации)
- Предложенный мной вариант о том, как это можно сделать, в отдельной, но небольшой инструкции "создание хоста.pdf" (в любом случае, обратите внимание на подключение необходимого конфига apache и nginx к созданному хосту)
- Для вашего удобства, выкладываю дистрибутив для установки Битрикса в архиве "bitrix_install.zip" (установка в таком случае происходит в режиме Быстрая установка/Short install)
Полностью рабочий дефолтный ISPManager 4/5, который научился работать с проектами на Битриксе быстро и без потери функционала.
Сборка уже используется в нашей компании — Эм Си Арт, как для своих сайтов и стендах, так и для продакшен сайтов клиентов.
Буду рад любым вашим комментариям, замечаниям и пожеланиям!
Этап 1. bitrix-env.sh (или «1С-Битрикс: Веб-окружение» — Linux)
Классическая установка Битрикса происходит на Битрикс-окружение, которое устанавливается через скрипт www.1c-bitrix.ru/products/env Именно с разбора bitrix-env.sh мы и начнём оптимизацию своего ISPmanager. На самом деле, в самом скрипте ничего особенного нет, сначала идёт стандартная проверка дистрибутива системы, затем, по результатам этой проверки, устанавливается то или иное необходимое ПО. Вся магия происходит, когда скрипт добавляет «фирменный» репозиторий 1С-Битрикс и устанавливает в систему пакет bitrix-env* и bx-nginx. На них мы заострим своё внимание.
И так, наш "bitrix-env_5.1.2_patched_2.sh" ничто иное, как немного переделанный скрипт от самого 1С-Битрикс, но основная «фишка» в установке bitrix-env из него убрана, почему — расскажу дальше.
Этап 2. bitrix-env.rpm (или Основной этап конфигурации)
Экосистема, которую предлагает bitrix-env, нам не подходит, нагромождения потенциально конфликтующих пакетов/конфигов ISPmanager и Битрикс-окружения нам вовсе ни к чему.
Оставив только нужно на мой взгляд я перенёс всё из rpm пакета в скрипт isp_patch.sh (внимание, протестирован только на centos 6.6 x64).
Далее — немного подробнее.
Этап 2.1 bx-nginx (или Nginx с поддержкой Push & Pull)
Этот пакет, который нам предлагает Битрикс-окружение, является ничем иным, как скомпилированным nginx с модулем «push and pull», который применяется в таком функционале как, например, «Бизнес-чат», «Живые комментарии», «Видеозвонки», «Мобильное приложение».
Мы можем просто забрать себе в систему, любезно скомпилированный 1С-Битрикс, готовый бинарник nginx на свою машину с ISPmanager и избавить себя от необходимости компилировать его самостоятельно (22 и 23 строки скрипта)
Этап 2.2 bvat.bx (или автотюнер параметров ПО)
Интересным составляющим «Битрикс-окружения» является скрипт bvat.bx, который прописывается в автозагрузку системы и выполняет работу по тюнингу параметров ПО, отвечающее за работу проекта (преимущественно mysql сервера и расходу оперативной памяти). Сам тюнер работает довольно просто. Основываясь на текущей конфигурации системы он выставляет тот или иной заготовленный «пресет» настроек в качестве действующих параметров. Хотелось бы заметить, что в конфигурации предусмотрено изменения параметров, которые выставил bvat.bx без полного его отключения (хотя можно поступить и так).
В нашем скрипте за его установку отвечают строки 25-31
Аналогично эталонному Битрикс-окружению, свои собственные параметры для mysql сервера можно прописать в файле /etc/mysql/conf.d/z_bx_custom.cnf (которые будут применены в обход bvat.bx). Так же, подключением своих конфигурационных файлов после конфигурационных файлов bvat, можно обойти его автонастройки для остального ПО, если тот или иной параметр, выставленный автоматически, вас не устраивает.
Так как логика скрипта мне по душе, дополнить его «автоматику» своими значениями не составляет труда, а его установка в систему была довольно проста, я включил его в свою конфигурацию.
Этап 2.3 Настройки php
Изменяем несколько параметром в php.ini (строки 33-40 в нашем скрипте)- memory_limit = 512M
- pcre.backtrack_limit = 1000000
- short_open_tag = On
Этап 2.4 Настройки mysql
42-48 строки скрипта копируют заранее подготовленный и настроенный my.cnf, в котором вы наверняка захотите что-нибудь поменять уже самостоятельно.
Этап 2.5 bitrixenv.ini (или директивы php необходимые для работы Битрикса)
Неотъемлемой частью классического Битрикс-окружения является файлик /etc/php.d/bitrixenv.ini, содержащий необходимые настройки директив, перечисленные в нём.
с минимальной разницей с оригинальным файлом, я скопирую его на свою машину с ISPmanager, как файл /etc/httpd/bx/bx_apache.conf (строки 50-52).
Важно заметить, что этот файлик мы нигде не инклюдим намеренно, чтобы прописывать его при необходимости только отдельным Virtualhosts созданным из-под ISPmanager (в секцию конфиг-apache).
Этап 2.6 Настройка nginx
Настройки nginx в моём скрипте имеют долю «автотюна» (строка 64 и 67) Остальное взято из конфигурационных файлов для nginx от Битрикс-окружения
строки 72-77 отвечают за компрессию на уровне сервера 79-82 — за push&pull
Обратите внимание на файл bx/conf/bitrix.conf . Важно заметить, что этот файлик мы нигде не инклюдим намеренно, чтобы прописывать его при необходимости только отдельным хостам, созданными из-под ISPmanager (в секцию конфиг-nginx)
кроме того, в нём есть блок «Some security options» с заранее подготовленными, но закоментированными опциями, имеющими отношения к безопасности хоста.
isp.bitrix_v0.6.ziphabr.com
Битрикс на CentOS 7 [RTzRa's hive]
Используемое ПО: CentOS 7, Nginx, MariaDB, PHP 7 FPM
Установка CentOS 7
Все как обычно, только выбрать тип файловой системы EXT4
После установки:
# yum update # yum install mc bash-completion net-tools wgetNginx
# rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm # yum install nginx -y # systemctl enable nginxPHP 7
# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm # rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm # yum install php70w php70w-mysql php70w-fpm php70w-mcrypt php70w-mbstring php70w-gd php70w-devel php70w-opcache -yMariaDB
# yum -y install mariadb-server mariadb # systemctl enable mariadbSELinux
Традиционно отключаем дабы не создавало проблем.
Редактируем /etc/sysconfig/selinux
SELINUX=disabledСоздаем папки для сайта
# mkdir -p /home/www/example # chown -R nginx:nginx /home/www/example # chmod -R 755 /home/www/exampleНастраиваем PHP
В /etc/php.ini меняем значения по умолчанию на указанное ниже:
cgi.fix_pathinfo=0 short_open_tag=on mbstring.func_overload=2 mbstring.internal_encoding=UTF-8 date.timezone = Europe/Moscow #ваша_временная_зона max_input_vars = 10000 post_max_size = 20M upload_max_filesize = 20M realpath_cache_size = 4096k display_errors = On memory_limit = 256MВ /etc/php.d/opcache.ini меняем значения по умолчанию на указанное ниже:
opcache.revalidate_freq=0 opcache.max_accelerated_files = 100000Проверяем файл /etc/php.d/pdo_mysql.ini - если он существует, значит нужно отключить pdo_mysql т.к. оно не будет работать вместе с mysqli:
;extension=pdo_mysql.soВносим изменения в файл /etc/php-fpm.d/www.conf
user = nginx group = nginx listen.owner = nobody listen.group = nobody listen.mode = 0666 listen = /var/run/php-fpm/php-fpm.sockЗапускаем и добавляем в автозагрузку:
# systemctl enable php-fpm # systemctl start php-fpmЭто создаст нужный нам php-fpm.sock файл, зададим ему права и владельца
# chmod 666 /run/php-fpm/php-fpm.sock # chown nginx:nginx /run/php-fpm/php-fpm.sockMariaDB
Запускаем скрипт первоначальной установки настроек безопасности:
# /usr/bin/mysql_secure_installation При запуске этого скрипта будет запрошен пароль для root пользователя и будут заданы другие вопросы безопасности на которые нужно отвечать Y или N (желательно на все вопросы ответить Y).Стандартные файлы конфигурации (/etc/my.cnf и содержимое папки /etc/my.cnf.d) заменяем прилагаемыми из этого архива: mariadb-bitrix-configs.tar.bz2
Перед запуском необходимо убедиться что MariaDB не запущена и из папки /var/lib/mysql удалить файлы ib_logfile0…ib_logfileN
Запускаем MariaDB
# systemctl start mariadbи проверяем логи - все должно быть без ошибок.
Создаем базу данных для Битрикс-сайта. Входим в консоль mysql под root-пользователем:
# mysql -h localhost -u root -p (вводим пароль указанный в скрипте mysql_secure_installation)Создаем базу в кодировке UTF-8:
> CREATE DATABASE `example_db` CHARACTER SET utf8 COLLATE utf8_unicode_ci; > CREATE USER 'example_db_user'@'localhost' IDENTIFIED BY 'example_db_password'; > GRANT ALL PRIVILEGES ON example_db.* TO 'example_db_user'@'localhost'; > FLUSH PRIVILEGES; > quit;example_db - название базы
example_db_user - пользователь
example_db_password - пароль пользователя
Ngnix
Заменяем оригинальный файл /etc/nginx/nginx.conf прилагаемым: nginx.conf.zip
Создаем файл настроек виртуалхоста /etc/nginx/conf.d/example.conf - example.conf.zip
Измените его под себя (домен, пути и т.д.)
Меняем права на директорию сессий
# chown -R nginx:nginx /var/lib/php/sessionЗапускаем
# systemctl enable nginxПорты для работы Bitrix
25 bitrix smtp сервер
80 http
443 https
5222 bitrix xmpp сервер
5223 bitrix xmpp сервер (ssl)
8090 ntlm авторизация
8891 ntlm авторизация (ssl)
Финальная проверка
В конце концов перезагружаем сервер чтобы убедиться что все хорошо работает и успешно запускается.
Загружаем скрипты Битрикса
Необходимо провести полное тестирование (Рабочий стол → Настройки → Инструменты → Проверка системы) и добиться чтобы все было настроено согласно рекомендациям.
wiki.rtzra.ru
Настройка опций в файле .htaccess
Директивы необходимо добавлять в самый конец или в самое начало файла, вне блоков кода <IfModule>…</IfModule>.
apc.cache_by_default
APC — акселератор PHP, использование которого увеличивает производительность интерпретатора за счет кэширования. В отдельных случаях, однако, может потребоваться его отключение — например, если скрипты не выполняются корректно из-за переполнения кэша.
Управление APC осуществляется директивами:
php_flag apc.cache_by_default on php_flag apc.cache_by_default off |
default_charset
Директива указывает кодировку по умолчанию (например, cp1251, utf-8, koi8-r) для всех выдаваемых страниц.
AddDefaultCharset cp1251 php_value default_charset cp1251 |
display_errors
Директива указывает, требуется ли выводить ошибки на экран вместе с остальным выводом, либо ошибки должны быть скрыты от пользователя.
Включение и выключение осуществляются следующим образом:
php_value display_errors 0 php_value display_errors 1 |
log_errors
Опция позволяет включить логирование ошибок php с их записью в произвольный файл (в примере errors.log). При указании пути к файлу замените u и user на первую букву Вашего логина и сам логин.
php_value log_errors on php_value error_log /home/u/user/путь_к_файлу/errors.log |
magic_quotes_gpc
Волшебные кавычки (Magic Quotes) — это процесс автоматического экранирования входящих данных PHP-скрипта. Если опция включена, то одинарные (‘) и двойные («) кавычки и обратный слэш (\)экранируются обратным слэшем автоматически.
Включение и выключение magic_quotes осуществляется директивами:
php_flag magic_quotes_gpc on php_flag magic_quotes_gpc off |
Опция позволяет включить логирование отправки почты из скриптов сайта. Логи будут содержать полный путь до скрипта, адрес получателя и заголовки. При указании пути к файлу, в который будут записываться логи (mail.log), замените u и user на первую букву Вашего логина и сам логин.
php_value mail.add_x_header 1 php_value mail.log /home/u/user/public_html/mail.log |
max_input_vars
Директива указывает, сколько входных переменных может быть принято в одном запросе. Например:
php_value max_input_vars 11000 |
mbstring.func_overload и mbstring.internal_encoding
Чаще всего к данным функциям требуется обращаться для настройки корректной работы сайтов на CMS Битрикс. В этом случае должны быть указаны следующие параметры:
php_value mbstring.func_overload 2 php_value mbstring.internal_encoding UTF-8 |
При этом для большинства других CMS необходимы иные значения этих функций:
php_value mbstring.func_overload 0 php_value mbstring.internal_encoding UTF-8 |
opcache.revalidate_freq
Отключение OpCache (настройка требуется для CMS Битрикс):
php_value opcache.revalidate_freq 0 |
pcre.recursion_limit
Устанавливает лимит на рекурсию.
php_value pcre.recursion_limit 14000 |
post_max_size
Опция устанавливает максимально допустимый размер данных, отправляемых методом POST. Также это значение также влияет на загрузку файлов — для загрузки больших файлов оно должно быть больше значения директивы upload_max_filesize.
php_value post_max_size 40M |
register_globals
Директивы для включения/выключения глобальных переменных:
php_flag register_globals on php_flag register_globals off |
request_order
Директива регулирует порядок, в котором PHP добавляет переменные GET, POST и Cookie в массив _REQUEST.
php_value request_order GPC |
upload_max_filesize
Устанавливает максимальный размер закачиваемого файла.
php_value upload_max_filesize 30M |
sershe.ru
Файл .htaccess - Раздел помощи
Файл .htaccess позволяет производить дополнительную конфигурацию веб-сервера Apache для достижения таких целей, как:
- Осуществление переадресации на другой домен
- Ограничение доступа к сайту
- Изменение значений директив PHP
- Отображение собственных страниц ошибок
Редактирование файла .htaccess поможет в осуществлении следующих задач:
Домены с кириллическими символами
При использовании кириллических доменных имён в файле .htaccess, их необходимо указывать в формате Punycode. Перекодировать их можно с помощью данного сервиса.
Организация переадресации с одного сайта на другой
Для организации переадресации с одного сайта на другой достаточно добавить следующие строки в файл .htaccess:
где from\.com — имя домена, с которого должна осуществляться переадресация, а "to.com" - ее цель. При этом экранирование символа точки обратной косой чертой \ во второй строке не является обязательным.
Переадресация поддомена в подкаталог сайта
Организация переадресации запросов на поддомен в подкаталог сайта осуществляется путем добавления в файл .htaccess следующих строк:
где img\.example\.com нужно заменить на имя поддомена, с которого должна осуществляться переадресация, а img на имя подкаталога, в котором находятся файлы поддомена. При этом экранирование символа точки обратной косой чертой \ в третьей строке не обязательно.
Переадресация с протокола HTTP на протокол HTTPS
Переадресация с протокола HTTP на протокол HTTPS осуществляется добавлением кода в .htaccess файл:
и наоборот, с HTTPS на HTTP:
Ограничение/разрешение доступа к сайту с определённых IP-адресов
Для ограничения доступа к сайту с определённых IP-адресов в файл .htaccess требуется добавить:
где вместо подстроки IP требуется добавить IP-адрес, для которого нужно будет ограничить доступ, или список таких IP-адресов перечисленных через символ пробела.
Если требуется разрешить доступ к сайту только с определённых IP-адресов, то для этого можно добавить следующие строки:
где IP — IP-адрес, для которого будет разрешён доступ, или список таких IP-адресов перечисленных через символ пробела.
Ограничение доступа к определённым файлам
Настройка ограничения доступа к определённым файлам производится путем добавления в .htaccess файл:
где ПУТЬ_К_ФАЙЛУ - необходимо заменить на целевой файл, а IP — на IP-адрес, для которого будет разрешён доступ.
Назначение кодировки для заголовков отдаваемых сервером по умолчанию
Для назначения кодировки для заголовков отдаваемых сервером по умолчанию достаточно добавить:
Затруднения с отображением кодировок, как правило, связаны с тем, что устаревшее ПО (сайт, CMS) использует кодировку отличную от той, на работу с которой сконфигурирован сервер. Данная директива может помочь в устранении данной ошибки.
Корректная установка CMS Bitrix
Для корректной установки CMS Bitrix в файле .htaccess необходимо указать следующее :
Изменение значений директив register_globals или magic_quotes_gpc
Если используетcя PHP, установленный как модуль веб-сервера Apache, и не используются глобальные переменные, рекомендуется отключать опцию register_globals в целях безопасности. Отключение register_globals производится внесением в файл .htaccess строки:
В том случае, если "волшебные кавычки" включены, то спецсимволы, к примеру, такие как одиночные и двойные кавычки. будут экранироваться обратными слэшами "\", что не всегда удобно. В версиях PHP 5.4.0. и выше данная директива не поддерживается. Для отключения "волшебных кавычек" в .htaccess следует добавить строку:
Отображение возникающих ошибок PHP на странице
Иногда для произведения анализа работы сайта может потребоваться отображение возникающих ошибок PHP в браузере. Эту задачу можно решить добавлением двух строк в файл .htaccess:
Указание собственной страницы ошибок
Установка собственных страниц ошибок возможна с помощью директивы ErrorDocument. После ErrorDocument указывается номер ошибки и путь к странице с ошибкой (либо текстовое сообщение). Примеры использования:
Временное отключение кеширования OPCache
Полный список и подробности того, какие директивы доступны для редактирования через файл .htaccess, предоставлены в официальной документации PHP и веб-сервера Apache2 по следующим ссылкам:
help.sweb.ru