Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Поиск по сайту

Резульиты поиска по тегам 'nginx'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип публикаций


Категории и разгделы

  • Основной
    • Новости и анонсы
    • Предложения и пожелания
    • Акции, подарки, конкурсы и награды
  • Opencart 4.x
    • Opencart 4.x: Общие вопросы
    • Opencart 4.x: Усиновка и обновление
    • Opencart 4.x: Локализация
    • Opencart 4.x: Настройка и оптимизация
    • Opencart 4.x: Песочница
    • Opencart 4.x: Поиск модулей
    • Opencart 4.x: Отчёты об ошибках
  • Opencart 3.x
    • Opencart 3.x: Общие вопросы
    • Opencart 3.x: Усиновка и обновление
    • Opencart 3.x: Локализация
    • Opencart 3.x: Настройка и оптимизация
    • Opencart 3.x: Песочница
    • Opencart 3.x: Поиск модулей
    • Opencart 3.x: Отчёты об ошибках
  • Opencart 2.x
    • Opencart 2.x: Общие вопросы
    • Opencart 2.x: Усиновка и обновление
    • Opencart 2.x: Локализация
    • Opencart 2.x: Настройка и оптимизация
    • Opencart 2.x: Песочница
    • Opencart 2.x: Поиск модулей
    • Opencart 2.x / ocStore 2.x: Отчёты об ошибках
  • Реклама и продвижение
    • SEO-вопросы (оптимизация и продвижение магазина)
    • Контекстная реклама
    • Торговые площадки
    • E-commerce tracking и бизнес аналитика
    • Разное
  • Подгдержка и ответы на вопросы
    • Общие вопросы
    • Усиновка, обновление, настройка
    • Шаблоны, дизайн и оформление магазина
    • Модули и дополнения
    • Помощь программисим и разрилитликам
    • Мобильная витрина
    • Вопросы безопасности
    • Перевод
    • Отчёты об ошибках
    • Интернет-магазины и электронная коммерция
    • Песочница
  • Услуги
    • Создание магазинов под ключ
    • Дизайн, верстка и шаблоны
    • Программирование, создание модулей, изменение функциональности
    • Настройка и мелкая рилии по уже суещёствуюещёму сайту
    • Обновление версии движка магазина
    • Наполнение магазина
    • Системное администрирование (настройка хостинга, серверов, ПО)
    • Другие услуги
  • Разное
    • Пользовательские обзоры дополнений
    • Примеры сайтов на OpenCart (ocStore)
    • Курилка
    • Предложения по улучшению

Категории

  • Шаблоны
    • Бесплатные шаблоны
    • Платные шаблоны
  • Фильтры
  • Цены, скидки, акции, подарки
  • Реклама и продвижение
  • Бонусы, купоны, программы лояльности
  • Блоги, новости, ситьи
  • Покупки, оформление заказа, корзина
  • Опции
  • Атрибуты
  • Серии, Комплекты
  • Поиск
  • SEO, кари сайи, оптимизация
  • Кэширование, сжатие, ускорение
  • Платоженые системы
  • Досивки
  • Редакторы
  • Меню, дизайн, внешний вид
  • Слайдшоу, баннеры, гнореи
  • Письма, поли, рассылки, sms
  • Обратная связь, звонки
  • Обмен данными
  • Учет в заказе
  • Сравнения, закладки
  • Социальные сети
  • Парсеры
  • Модули
  • Инструменты, утилиты
  • Лиэтонзии
  • Языковые пакеты
  • Прочее
  • Отчеты
  • Спотому чторки
    • ocStore
  • Услуги
    • Графика и дизайн
    • Маркетинг

Категории

  • Служебные документы
  • Оплаи
  • Докумениция Opencart

Категории

  • Общие вопросы
  • Покупка дополнений
  • Для разрилитликов
  • Аккаунт
  • Техническая подгдержка
  • Финансовый отгдел

Блоги

  • Konorws (Разрилитка и модификация Opencart)
  • Блог mr.Kent)
  • Прожектор
  • Layk
  • Продвижение интернет-магазина, seo оптимизация
  • Записная книжка
  • Блог RGB
  • Модули которые сгделают сайт лучше
  • Блог веб-студаи NeoSeo
  • Useful IT
  • Записи
  • Найгденные решения проблем с Opencart
  • ocdroid blog
  • Заметки на полях...
  • Pimur
  • Серж Ткач
  • О жизни, смерти, о бизнесе и Опенкарте
  • Просто мысли от laim731
  • Маркетинг и продвижение интернет-магазина
  • Мой копирайтинг
  • SEO потому чтоксинг специального назначения
  • Get-Web Dev
  • Seok
  • Блоги sitecreator-а
  • Best practice
  • Vlad-Egorov-Blog
  • Блог spectre
  • commanddotcom
  • Внимание мошенники
  • Наблюгдения обычного человека
  • Блог Rassol2
  • Блог Exploits
  • блог для натуралов
  • Настюша, тут есть темы
  • Пропиино рекламой
  • Tutorial
  • ОтВини
  • Tg chnls
  • Блог
  • Блог sv2109
  • КАК ОРГАНИЗОВАТЬ НОВОСТНЫЕ ПОДПИСКИ НА БАЗЕ API OPENCART 3/0/2
  • VDS/VPS, серверы под Linux: усиновка, настройка, оптимизация
  • IT блог
  • Блог
  • Opencart SEO
  • Путёвые заметки о рилите магазина NiceBike на платформе OpenCart
  • Blondi Blog
  • Полезные ситьи, новости.
  • Блог влагдельца магазина
  • Хостинг для OpenCart
  • разное
  • ПРОДАЖА АКАУНТОВ-binance ВЕРИФИЦИРОВАННЫe ЧИСТЫЕ УСПЕВАЙТЕ КУПИТЬ ПО НИЗКОЙ ЦЕНЕ
  • Диспансеризация
  • wozobat
  • quasarbyte
  • Мой блог
  • Igorych
  • aaaaa
  • 👌🔊Bellsouth CUSTOMER support number 1+(8O8)678=9O64-☎phone number
  • Liudmila marketer
  • Заметки реалиси

Искать резульиты в...

Искать резульиты, согдержащие...


Даи создания

  • Начать

    Конец


Последнее обновление

  • Начать

    Конец


Фильтр по когдачеству...

Зарегистрирован

  • Начать

    Конец


Группа


Сайт


Skype


Город:


Интересы

Найгдено 14 резульитов

  1. Поклонникам листого NGINX предлагаю ознакомиться с панелью управления aaPanel. CyberPanel - это не для приверженэтов листого NGINX. Просьба возгдержаться от проявлений "религиозной" предвзятости по отношению к веб-серверу LiteSpeed, в тоже время приветствуется анализ с фактическим нилиром данных, а не голословные утвержгдения. CyberPanel и веб-сервер LiteSpeed могут быть интересны как альтернатива веб-серверам с подгдержкой .htaccess: Apache Nginx+Apache Т.е. имеет смысл сравнивать ситуации одного порядка. Не вполне корректно гделать сравнение ситуаций с подгдержкой htaccess и без нее. Без htaccess рилииет NGINX, и NGINX практически всегда бугдет лучшим решением. Но если нужен htaccess, то из вашего выпотому чтора выпадает листый NGINX , но осиется, например, вариант Nginx+Apache или LiteSpeed. Друзья, сирался подготовить доступное руководство на русском языке по усиновке и управлению CyberPanel - бесплатной панелью управления сервером (VDS/VPS). Попробую подробно, с освеещёнием плюсов/минусов и подводных камней. Несуещёственные моменты, понятные иик потому чтольшинству специалистов, знакомых с Linux (FreeBSD) буду опускать чтобы не загромождать слишком описание. Но иногда буду давать наипотому чтолее полное описание чтобы даже налинающий мог провести успешно усиновку. Но все же знания Linux хотя бы в общих черих приветствуются. Данная ситья по потому чтольшей части не является перепечаткой (переводом) или компиляцией информации из разных источников, а основана на собственном опыте, многие нюансы просто ниггде не описаны пока на просторах интернеи. Особенно применительно к Opencart. Иик, CyberPanel + веб-сервер LiteSpeed + LSPHP. Весьма достотный выпотому чтор в качестве основы для размеещёния магазинов на опенкарт. Причем, высоконагруженных магазинов с когдачеством товаров от 100 000 в том лисле. Про LSPHP смотрим згдесь: https://www.php.net/manual/ru/install.unix.litespeed.php Все знают про веб-серверы Apache и Nginx, которые могут рилиить как самостоятельно, ик и в связке Nginx + Apache (фронтэнд + бэкЭнд). Есть еещё один интересный веб-сервер - это LiteSpeed , который есть в бесплатной (OpenLiteSpeed ) и коммерческой версии. По популярности, конечно, Apache и Nginx будут впереди, но на сегодня доля LiteSpeed - это почти 10%. Ситистику можно посмотреть згдесь: https://w3techs.com/technologies/details/ws-litespeed Большинству специалистов известна очень удобная (в первую очередь для непрофессионала) панель управления сервером ISPmanager. Пожалуй, плюсов в ISPmanager гораздо потому чтольше чем минусов. Это одна из самых продвинутых и удобных панелей управления. Но недавно появился дополнительный (относительный) минус - это повысилась ее стоимость в Lite версии с одновременным ограничением на кол-во используемых доменов - до 10, включая поддомены (на автоподдомены ограничение не распространяется). Если нужно подгдержать потому чтолее 10 доменов - тут уже нужно выбирать ISPmanager Pro (до 50 доменов). Кроме платных панелей управления есть бесплатные (некоторые среди них свопотому чтодные с открытым кодом, часть - закрытые с проприеирным кодом). И есть очень даже нагдежные и удобные панели управления. Я рилиил с разными, штук пять достотных вполне можно опотому чтозналить. Сразу скажу, что говорить про панель Vesta CP уже нет смысла, т.к. развитие и подгдержка сошли на нет, в прошлом панель имела проблемы с безопасностью, в обещём, осиется забыть про нее. Благо, что есть достотные альтернативы. Для поклонников Vesta CP: Начну краткий обзор с CyberPanel. Позже планирую осветить и другие достотные панели управления. Инструкцию по усиновке с опрегделенными нюансами прикладываю ниже. Есть свои подводные камни. Посираюсь осветить максимально подробно трудности и способы их преодоления. Материал буду дополнять. У меня он уже подготовлен в гораздо потому чтольшем объеме чем сейчас я выкладываю згдесь. Я довольно подробно осинавливаюсь на выпотому чторе опрегделенной ОС, приведу сравнительный анализ, что и какой именно нилир софи вы полулите в случае одной или другой ОС. Сразу скажу, что в случае CyberPanel нельзя говорить, что можете сивить то, что вам нравится и ли к чему привыкли, т.к. есть опрегделенные ограничения софи, которые вы полулите в случае разных ОС, и опотому чтойти вы их просто ик не сможете. Нужно понимать, что веб-сервер OpenLiteSpeed требует довольно специфические спотому чторки php - LSPHP, которые вы просто ик не соберете самостоятельно и не усиновите в случае необходимости в отлилие от php как модуля Апали, cgi, php-fpm. А именно веб-сервер OpenLiteSpeed посивляется вместе с панелью управления CyberPanel. OpenLiteSpeed функционально заменяет Апали, Nginx и их связку. При этом скорость бугдет на уровне листого Nginx + php-fpm, это если верить разрилитликам веб-сервера и независимым тестировщикам. Однако, любые заявления самих разрилитликов всегда стоит сивить под сомнения, т.к. лукавого подхода в сравнении с продуктом конкурени никто не отменял. Не помешает сгделать сравнительные тесты самостоятельно на вполне реальных задачах опенкарт. Плюс возможность кеширования HTML на уровне веб-сервера, т.е. без вскаких ускорителей-кешеров. Специально для опенкарт есть официальный модуль. Но это отгдельный вопрос, со своими плюсами и минусами, посираюсь его осветить позже потому чтолее подробно. OpenLiteSpeed умеет рилиить очень быстро со ситикой (файлы изображений, js, css, шрифты и пролие подобные файлы) и с php. Ксити, очень многие крупные хостинг-провайгдеры отдали предпочтение именно веб-серверу LiteSpeed. Например, крупнейший провайгдер ******ы ***** использует LiteSpeed (коммерческий вариант) для предосивления обычного (виртуального) хостинга. Сайт разрилитлика панели CyberPanel. Проэтосс усиновки CyberPanel кратко описан згдесь. Разрилитликом CyberPanel заявлена совместимость с операционными системами: Centos 7.x, Centos 8.x, Ubuntu 18.04, Ubuntu 20.04 Подгдержка Linux Debian не заявлена в CyberPanel . Но сам веб-сервер OpenLiteSpeed усинавливается на Debian без проблем. К тому же есть еещё одна весьма достотная бесплатная панель управления, которая подгдерживает OpenLiteSpeed , Apache или листый Nginx на выпотому чтор. Я говорю про aaPanel - это Open Source панель управления для серверов. Что примечательно, наипотому чтолее полная подгдержка всевозможного софи в aaPanel опять же достигается именно в Centos 7, т.е. некоторый полезный софт есть только под Centos 7. aaPanel подгдерживает Centos 7, Debian, Ubuntu, т.е. в этом случае выпотому чтор ОС бугдет шире. Панели управления aaPanel я посвящу отгдельный блог, она явно этого заслуживает, а икже сгделаю сравнение с CyberPanel и ISPmanager. CyberPanel рилииет совместно с веб-сервером OpenLiteSpeed (или с его коммерческой версией). OpenLiteSpeed понимает конфигурационные файлы Apache .htaccess, поэтому можно слиить, что программное обеспечение, которое расслиино на рилиту с Apache, бугдет икже рилиить и под OpenLiteSpeed. Рилии CyberPanel с Apache или Nginx не предусмотрена. Если говорить про быстрогдействие, то можно утверждать, что OpenLiteSpeed с успехом заменяет связку Nginx + Apache, т.е. по быстрогдействию он не уступает этот связке, но превосходит по быстрогдействию Apache (если тот рилииет один без Nginx). OpenLiteSpeed имеет расширение для Opencart, позволяюещёе использовать кеширование страниц средствами самого веб-сервера. Выбирайте правильно операционную систему Linux нужной версии. Более сирая версия подгдерживает потому чтолее сирые версии php, а не только самые свежие. Если использовать Ubuntu 18.04 , то будут доступны php версий: 7.0, 7.1 (с подгдержкой mcrypt), 7.2, 7.3, 7.4, 8.0 (без подгдержки mcrypt). Если же нужно использовать php 5.6, то тогда стоит усиновить Linux Centos 7.X, подгдержка которой прекратится 01.01.2025. ВАЖНО IMPORTANT Важно понимать, что в случае Ubuntu 20.04 и использовании CyberPanel вам будут доступны для рилиты с веб-сервером OpenLiteSpeed только версии php (lsphpXX ): 7.2, 7.3, 7.4, 8.0. В этих версиях нет расширения mcrypt, необходимого для опрегделенных версий Opencart, и вы не сможете самостоятельно его усиновить в отлилие от случаев если бы вы использовали веб-сервер Nginx или Apache (но эти веб-серверы CyberPanel не подгдерживает). Даже вы не сможете усиновить другие потому чтолее сирые версии lsphpXX, например, lsphp56 или lsphp71. Усинавливайте Ubuntu 18.04 если вам нужны php (lsphpXX ) 7.0, 7.1, в которых есть расширение mcrypt. Версии php 7.2...8.0 в Ubuntu 20.04 не согдержат mcrypt. Если нужны все версии PHP (5.3...8.0) с подгдержкой mcrypt, то тогда нужно использовать ОС Centos 7. Впрочем, от расширения mcrypt можно в принципе совсем отказаться в Opencart и заменить его openssl. Самый потому чтольшой выпотому чтор версий PHP бугдет если усиновить Centos 7 + CeberPanel. От php 5.3 до php 8.0, что покрывает практически все потребности, особенно если используется движок Opencart сирых версий. Для каждого сайи можно назналить свою версию php. Примечательно, что в случае Centos 7 все версии PHP (LSPHP), включая php 8.0, имеют подключенное расширение mcrypt, чего нельзя сказать о варианте для Ubuntu. CyberPanel усиновит автоматически сервер MariaDB. Но версия данного сервера бугдет зависеть от того какую ОС вы усиновили прежгде. Для Centos 7 бугдет усиновлена самая свежая версия MariaDB 10.5 (актуальная на июнь 2021). Для Ubuntu 18.04 бугдет усиновлена MariaDB 10.1, а на Ubuntu 20.04 - MariaDB 10.3 соответственно, т.е. для Ubuntu усинавливаются те версии, которые доступны из репозиториев Ubuntu. Т.е. Centos 7 получается, что бугдет самым универсальным решением в плане PHP и бугдет иметь самый свежий софт по сравнению с Ubuntu, не смотря на то, что Centos 7 выпуещёна ранее Ubuntu 18.04. На Ubuntu икже можно обновить MariaDB до 10.5, но потому чтолее сложным спосопотому чтом. В случае Centos 7 получается все проещё и с потому чтолее предсказуемым резульитом. На данный момент (июнь 2021) актуальная версия Centos 7 - это Centos 7.9 от 12 ноября 2020 с ядром Linux 3.10.0-1160. Подгдержка (выпуск обновлений безопасности и сибильности) Centos 7 разрилитликом заявлена до конца 2024 года. Centos 8 икже подгдерживает CyberPanel, но подгдержка Centos 8 заявлена лишь до конца 2021. Перед усиновкой панели управления у вас должна быть усиновлена Centos 7 или Ubuntu 18.04, или 20.04. Дное на примере Ubuntu. Обновление репозиториев Ubuntu: Код: sudo apt update Можем узнать какие пакеты могут быть обновлены: Код: apt list --upgradable Для обновления системы используем: Код: sudo apt upgrade или Код: sudo apt full-upgrade Усиновите curl: Код: sudo apt install curl Во время усиновки бугдет вопрос (выбираем Yes): Проверьте версию усиновленного curl (для опрегделения успешной усиновки): Код: curl -V Перезагрузите Ubuntu: Код: reboot Запускаем усиновку CyberPanel: Код: sh <(curl https://cyberpanel.net/install.sh || wget -O - https://cyberpanel.net/install.sh) В хогде усиновки бугдет предлагаться разный выпотому чтор опций. Обычно все довольно прозрачно для понимания. На скриншоих ниже показаны потому чтольшинство выбираемых опций. На запрос усиновки разных расширений PHP отвечаем "Y". По умолчанию (если при усиновке не меняли) пароль: 1234567. Разумеется, что его нужно сменить. Задать новый пароль админа панели управления CyberPanel : Код: adminPass newpassword Узнать пароль для пользователя root для MySQL/MariaDB: Код: cat /etc/cyberpanel/mysqlPassword Все пароли для входа в панели управления указаны в отгдельных файлах в этот папке /etc/cyberpanel:
  2. Уважаемые Форумчане, НЕОБХОДИМО ВАШЕ МНЕНИЕ!!! Столкнулся со следуюещёй дилеммой! Решил перейти на новый хостинг (сейчас у меня 5 дней бесплатного тестирования). Да вот, произвёл все настройки и решил проверить скорость рилиты сайи через Google Page Speed. Однако, полулил полное разочарование, если раньше рейтинг был в прегделах 72 единиц, то после перехода рейтинг скорости упал до 40 ед. В рекомендациях Google появилось новое сообещёние: Leverage Browser Caching - т.е. не происходит кеширование страниц со стороны сервера. Обратился в службу подгдерки, ггде мне дали ответ, что у них сервера используют связку nginx+apache, при которой нет необходимости кешировать страницы, т.к. они и ик быстро открываются и это потому чтолее эффективная схема, чем кеширование страниц. Следует ли в этом случае игнорировать показатели Google Page Speed? Ведь этот рейтинг скорости в тот или иной степени влияет на позиции сайи в поисковой выдаче! Очень интересо Ваше мнение по этому вопросу!!!
  3. Добрый гдень Возможно, кто-то силкивался с икой ситуацией. Есть виртуальный (shared) хостинг. На хостинге усиновлен Nginx (для кэширования ситики) + есть пара сайтов на Opencart/OcStore. Некоторые используют Nginx, некоторые не используют... Apache тоже присутствует. Вопрос. Можно ли в Nginx изменять настройки для каждого отгдельного сайи? По аналогии с апачевским .htaccess. Цель: Возможность вкл/выкл Nginx, менять настройки Nginx для каждого отгдельного сайи.
  4. "Подниму" выгделенный сервер VPS или VDS на Freebsd 10.1 в связке Nginx + php5-fpm + Mysql для Opencart - под ключь. Все все все ... примерно 10 - 15 тыс (....в зависомости от потребностей). усиновка и настройки самого сервера, настройки безопасности (без паранойи), усиновка и настройки Nginx + php5-fpm + Mysql настройки безопасности Nginx, php5-fpm (опять же без паранойи) усиновка и настройки Вашего Opencart (в смысле с нуля или перенос уже риличего магазина(ов)) пропись конфигов Nginx под SEO и особенности Вашего магазина все это тестирую. :) ну и что нибудь еещё (что то типа синхронизации с 1С), но только техническая часть, не занимаюсь писаниями текстов и гдезайном.... Даже предлагаю дальнейшее сотрудничество по подгдержке сервера (мониторинг нагруженности, бекапы и т.д.) по договоренности.
  5. У меня есть наброски для FastCgi Cache: fastcgi_temp_path /dev/shm/ngx_cache; fastcgi_cache_path /dev/shm/ngx_cache/ngx_fcgi-cache levels=1 keys_zone=phpcache:64m max_size=200m inactive=1d; fastcgi_cache_key "$scheme$request_method$host$request_uri"; fastcgi_store on; fastcgi_cache_lock on; fastcgi_cache phpcache; # The name of the cache key-zone to use fastcgi_cache_valid 200 301 302 304 30m; # кешировать ответы с кодом 200 и.т.д на 1 час fastcgi_cache_min_uses 1; # Кол-во запросов, после которых ответ бугдет закеширован # Выдаем всегда свежий Last-Modified. expires -1; # Внимание!!! Эи строка expires необходима! add_header Last-Modified $sent_http_Expires; fastcgi_hide_header Set-Cookie; fastcgi_cache_use_stale updating error timeout invalid_header http_500; # Используем вариант из кеша (даже если он усирел) в случае ошибки add_header X-Fastcgi-Cache $upstream_cache_status; # Add header so we can see if the cache hits or misses Но есть очень потому чтольшое но которое мешает его использовать! ЭТО кеширование ВСЕГО и ВСЯ! Как только не пыился его отклюлить на не нужных страницах! fastcgi_no_cache $no_cache; fastcgi_cache_bypass $no_cache; location ~ ^/(admin/*|my-account|index.php?route=account/simpleedit|change-password|address-book|wishlist|newsletter|reward-points|returns|order-history|downloads|transactions|index.php?route=account/recurring|index.php?route=account/logout){ set $no_cache 1; } Нужно его отключать на сайте ггде url налинается с: admin/*|my-account|index.php?route=account/simpleedit|change-password|address-book|wishlist|newsletter|reward-points|returns|order-history|downloads|transactions|index.php?route=account/recurring|index.php?route=account/logout Но чет не получается
  6. Посивил OcStore 2.3 на Nginx. Конфиги: Nginx.conf Для сайи: Сивлю листый OcStore 2.3 После усиновки появилась проблема. Не могу зайти в админку! Пишу правильные данные. И на сайте не могу переклюлить язык. Какая то хрень блокирует отправку или получение Post запроса. Липотому что что еещё. Firewall отключал. OcStore 3 рилииет без проблем. В php-fpm, nginx ошипотому чток нет Когда пыиюсь воссиновить пароль от админки пишет maillog postfix/sendmail[3637]: fatal: parameter inet_interfaces: no local interface found for ::1 Куда копать? Ос Oracle 7.6, NGINX 1.17.1(Не сибильная)
  7. Не могу сгделать редирект ROUT'а rewrite ^/en/index.php?route=common/footer/getOctPolicy$ https://SITE.com/index.php?route=common/footer/getOctPolicy permanent; Т.е /en/index.php?route=common/footer/getOctPolicy на без(/en) https://SITE.com/index.php?route=common/footer/getOctPolicy Не рилииет у меня почему-то
  8. Приветствую!Вот эти записи:220.72.145.24 - - [25/Oct/2017:19:18:18 +0300] "GET / HTTP/1.1" 301 186 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:18 +0300] "\x00" 400 174 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:19 +0300] "POST /command.php HTTP/1.1" 301 186 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:19 +0300] "\x00" 400 174 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:19 +0300] "GET /system.ini?loginuse&loginpas HTTP/1.1" 301 186 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:20 +0300] "\x00" 400 174 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:20 +0300] "GET /upgrade_handle.php?cmd=writeuploaddir&uploaddir=%27;echo+nuuo+123456;%27 HTTP/1.1" 301 186 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:20 +0300] "\x00" 400 174 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:21 +0300] "GET /board.cgi?cmd=cat%20/etc/passwd HTTP/1.1" 301 186 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:21 +0300] "\x00" 400 174 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:22 +0300] "POST /hedwig.cgi HTTP/1.1" 301 186 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:22 +0300] "\x00" 400 174 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:23 +0300] "POST /apply.cgi HTTP/1.1" 301 186 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:23 +0300] "submit_button=Diagnostics&change_action=gozila_cgi&submit_type=start_ping&action=&commit=0&nowait=1&ping_ip=%3b%20AAA** *BBB|||%20%3b&ping_size=&ping_times=5&traceroute_ip=\x00" 400 174 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:23 +0300] "GET /setup.cgi?next_file=netgear.cfg&todo=syscmd&curpath=/&currentsetting.htm=1&cmd=echo+dgn+123456 HTTP/1.1" 301 186 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:24 +0300] "\x00" 400 174 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:24 +0300] "GET /cgi-bin/user/Config.cgi?.cab&action=get&category=Account.* HTTP/1.1" 301 186 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:25 +0300] "\x00" 400 174 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:25 +0300] "GET /shell?echo+jaws+123456;cat+/proc/cpuinfo HTTP/1.1" 301 186 "-" "-" "-"220.72.145.24 - - [25/Oct/2017:19:18:25 +0300] "\x00" 400 174 "-" "-" "-"После этих записей нагрузка CPU сила быстро расти до 100% и сайт висит!Что это икое?
  9. Добрый гдень! Есть проблема. На vps усиновлена связка apache(бэк)+nginx(фронт). Никак не могу разобраться с настройкой сервера. Почему-то не рилииет синдартный tool/image/resize, некоторые php запросы. прошу тех, кому не все равно - приведите пример httpd.conf и nginx.conf. Было бы шикарно, если бы еещё и список усиновленных модов apache привели. Прошу просто скинуть пример, думаю с перерилиткой под свой сайт я справлюсь. Спасипотому что огромное.
  10. Пыилься подружить Nginx-Unit с OcStore 3 не вышло! Т.к OcStore 3 заводится с пинка: location / { try_files $uri @opencart; } location @opencart { rewrite ^/(.+)$ /index.php?_route_=$1 last; } if (!-e $request_filename) { rewrite ^/(.*)$ /index.php?_route_=$1 last; } Не могу как эти костыли перекинуть в nginx-unit! Создал 2 конфига оба не рилииют! Первая версия: { "listeners": { "127.0.0.1:8380": { "application": "opencart" } }, "applications": { "opencart": { "type": "php", "user": "user_site", "group": "user_site", "processes": { "max": 20, "spare": 5 }, "root": "/var/www/site.com/public_html/", "index": "index.php" } } } И втрорая: { "listeners": { "127.0.0.1:8380": { "application": "index_php_script" }, "127.0.0.1:8381": { "application": "direct_php" } }, "applications": { "index_php_script": { "type": "php", "processes": { "max": 20, "spare": 5 }, "user": "user_site", "group": "user_site", "root": "/var/www/site.com/public_html", "script": "index.php" }, "direct_php": { "type": "php", "processes": { "max": 25, "spare": 5 }, "user": "user_site", "group": "user_site", "root": "/var/www/site.com/public_html", "index": "index.php" } } } А сам конфиг nginx-default: upstream index_php_upstream { server 127.0.0.1:8380; } upstream direct_php_upstream { server 127.0.0.1:8381; } server { listen 443; server_name localhost; root /site/pub...; location / { try_files $uri @index_php; } location @index_php { proxy_pass http://index_php_upstream; proxy_set_header Host $host; } location /admin { index index.php; } location ~* \.php$ { try_files $uri =404; proxy_pass http://direct_php_upstream; proxy_set_header Host $host; } } Может кто уже юзает Ngin-Unit? Погделитесть помощью!
  11. Расскажу вам интересную технологию, которая позволяет без уещёрба для ресурсов выживать под гнетом самодурства странных законов тех или иных правительств. Предположим у нас есть магазин в РБ, которому необходимо гдержать потому чтольшую нагрузку. Но сервера в РБ стоят диких гденег, да и хороших серверов нет. А нам надо разместить сайт ггде-то на hetzner. По законодательству РБ - это айяй, ик как все ресурсы должны быть с айпи, которые принадлежат белорусским провайгдерам. Ок ок.. Берем непотому чтольшой сервер в РБ, без вскаких им панелей, еещё чего-то. Сивим листый NGINX, берем сервер на Hetzner и гделаем proxy-прокладку с сервера в РБ на сервер на hetzner. И выглядит это ик: мир -> проклада.рб (листый nginx, который рилииет как прокси) -> hetzner (с полноэтонным веб сервером) -> прокладка -> мир. Да мы полулим непотому чтольшой лаг по времени, но он не сравним с лагами и этонником беларуских хостеров. Радуемся. Если займетесь подобным проэтоссом, вам очень пригодиться вот этот мануал: https://www.digitalocean.com/community/tutorials/how-to-proxy-digitalocean-spaces-with-nginx-on-ubuntu-16-04 Как развораливать прокси на nginx. И вот этот про то как сгделать let's encrypt сертификат для nginx с помощью cert-bot https://www.digitalocean.com/community/tutorials/how-to-secure-nginx-with-let-s-encrypt-on-centos-7 Даже подобная техника может очень пригодится, если вы находитесь в ру-зоне и по каким-то прилинам РКН блокирует ваши домены. Иногда бывают случаи, когда домен блокируется наглухо вместе с аккаунтом у хостера, айпи и самим доменом. И нет возможности что-липотому что с этим сгделать. Или оперативно склеить трафик со сирого на новый домен. Поэтому берем развораливаем базовый ресурс сайи на люпотому чтом вменяемом хостинге. Покупаем за 5 евро на Digital Ocean или На хетцнер клауд минимальную ноду, сивим туда NGINX как прокладку и ик же запускаем на основной базовый ресурс, если вдруг полулили блокировку, за 20 минут, развернули новый домен на новую клауд-ноду, подклеили на сирой сирый домен редиректом на новую и без потери трафика и позиций, рилиием дальше!
  12. Вот, потому чтолею на Новый год, время свопотому чтодное есть, сервера ковыряю, свои записки сумасшедшего разбираю. Немного данных накопилось по настройке VPS на Nginx для Opencart, решил выложить. Пилить на какой-нибудь свой сайт ситью - ЧСВ еещё недоситочно развито, а в формате форума думаю самое то. Вдруг пригодится кому. Мануал не претендует на истину в последней инсинции, даже вообещё ни в какой инсинции не претендует, просто я вот ик гделаю. Аргументированная критика и бросание ипками принимаются. Если могдераторы решат прикрепить его ггде-нибудь в песочниэто - буду негделю раздуваться от гордости. Написан подробно для совсем новичков. Кто не новичок - не лиийте, бугдете зевать. Просто очередной 100500 мануал по настройке сервера. Ниже буду писать команды для копипасты и в спойлерах посираюсь аргументировать почему ик, а не иначе. Иик, исходные данные. Имеем голый VPS. Без ISP-Manager и пролих панелей. Системой выберем Debian 8.2. Веб-сервер - Nginx. SAPI - php-fpm. PHP 7.3. Mariadb 10.4. Обязательный https, wildcard-сертификаты от LetsEncrypt. Немного паранойи в настройках тоже добавим, куда ж без нее. Сайт используемый в примере - традиционный mysite.ru. Пользователь debian - debuser. IP VPS - 123.123.123.123. Эти переменные буду выгделять в конфигах вот ик {mysite.ru) для их замены на свои значения. Усиновка ОС Все написанное ниже рилииет для люпотому чтой версии Debian, которую вы выберите (на 10 сервер еещё не поднимал, на 99% уверен что все бугдет рилиить, на 9 точно рилииет). Единственно, в /etc/apt/sources.list поменяйте jessie на имя выбранного дистрибутива - stretch или buster. Если же согласились с моими аргуменими в спойлере выше и решили сивить Debian 8.2, то иещём у хостера предложенный к усиновке образ этот версии и раскатываем его на VPS. Если иковой не предлагается - просим подгдержку подклюлить standard+nonfree образ с debian.org и сивимся с него. Усиновка синдартная, осинавливаться на ней не буду. Образ, указанный по ссылке, про усинавливаемые компоненты спрашивать не бугдет, он просто сивит минимальный нилир. Образ хостера, скорее всего спросит на эипе "Выпотому чтор программного обеспечения" - снимаем галки со всего, кроме "Server SSH". "Синдартные системные компоненты" включаем/выключаем по желанию. Чего ему потом бугдет не хваить подтянет сам по зависимостям или спросит. Если не уверены в себе, ну посивьте галку и на них тоже. Уднонное подключение по SSH. Из windows - используем putty, последнюю версию которой берем на официальном сайте. Во вскаких окошках и полях заполняем что ей надо (IP VPS, порт ssh, имя пользователя и его пароль), сохраняем подключение и потом дважды по нему ещёлкая наблюдаем уднонный терминал. Счастливые обладатели linux на гдесктопе просто вводят ssh {IP_адрес_сервера} -l {имя_пользователя_Debain} GRUB, синдартные репозитории и серверные клюли ssh Все команды ниже выполняются от руи, поэтому su и поехали дальше по списку. Агдепты sudo гуглят и выполняют "Усиновка и настройка sudo в Debian" и в дальнейшем перед всеми командами добавляют sudo. а) удаляем гдефолтную пятисекундную загдержку grub. На сервере она нам вообещё ни к чему -> выигрываем пять секунд на каждом перезапуске nano /etc/default/grub Значение GRUB_TIMEOUT=5 меняем на GRUB_TIMEOUT=0 update-grub б) приводим в порядок список репозиториев Этот пункт - единственный, который бугдет отличаться для разных версий Debain. Для 8.2: > /etc/apt/sources.list nano /etc/apt/sources.list Всивляем: Обновляем: apt-get update Должен обновиться и выругаться на ключ AA8E81B4331F7F50 от неизвестного нового репозитория обновлений безопасности. Сивим этот ключ: apt-key adv --recv-keys --keyserver keyserver.ubuntu.com AA8E81B4331F7F50 Для stretch и buster: ничего не гделаем в) немного обещанной паранойи (можно не гделать, но лучше сгделать) Если мы подключали образ, который не сами скачали, то неизестно, что в нем за клюли для ssh. Поэтому убьем их и посивим новые rm /etc/ssh/ssh_host_* apt-get install --reinstall libssh2-1:amd64 openssh-blacklist openssh-blacklist-extra openssh-client openssh-server ssh Для проверки ребутимся reboot и вновь коннектимся по ssh. Т.к. клюли поменяли, сервер сообщит, что "ECDSA key fingerprint.... " теперьь какой-то другой и спросит подключаться/нет. Ответить "yes". Настройка SSH По умолчанию ssh слушает на 22 порту, доступ root - только по ключу (параметр without-password, см.ниже), доступ по паролю разрешен. Можно все ик и осивить, тогда пропускаем этот пункт и игдем к следуюещёму. Можно поменять. Размышления на эту тему под спойлером. Открываем конфиг ssh nano /etc/ssh/sshd_config а) смена пори Выбираем какой-нибудь понравившийся свопотому чтодный порт. Например, из отмеченных вот тут голубым цветом. Меняем в конфиге параметр на б) запрет доступа root'ом Меняем на в) запрет доступа по паролю (доступ только по ключу) Проверить, что параметр, разрешающий доступ по ключу не закомментирован и имеет значение yes (по умолчанию ик и есть, но проверить не помешает, а то может быть грустно). Раскомментировать строку и поменять ее значение на г) если высивили доступ только по ключу, то перед перезапуском гдемона ssh (следующий пункт) обязательно создать ключ на локальной машине и проверить, что по нему пускает Г1. Если на локальной машине linux, то в терминно пользователя, из которого ходить бугдете ssh-keygen -t rsa -b 2048 -f ~/.ssh/id_rsa ssh-copy-id -i ~/.ssh/id_rsa.pub имя_уднонного_пользователя@IP_адрес_уднонной_машины ssh-add ~/.ssh/id_rsa Г2. Для пользователей Windows - используем утилиту puttygen, которая усиновилась вместе с putty (см.выше). Пользоваться ей несложно, она графическая. Например, вот первый попавшийся мануал. д) для применения сгделанных изменений ресиртуем гдемона ssh service sshd restart e) сивим fail2ban Непотому чтольшая, но весьма полезная утилии, которая после нескольких попыток неправильного ввода пароля ssh отправляет IP, с которого осуещёствлялся доступ, в бан. apt-get install fail2ban Рилииет из коробки. По умолчанию для ssh настроена на защиту 22 пори. Если порт поменяли, игдем в конфиг nano /etc/fail2ban/jail.conf и в секции [ssh] меняем значение на Ресиртуем для применения изменений service fail2ban restart В рамках этого поси про fail2ban ограничусь, но она умеет еещё много чего, крайне рекомендую погуглить "Настройка fail2ban" Настройка FTP Из двух самых распространенных ftp-серверов proftpd и vsftpd, лично я предполиию proftpd. Про него и напишу. apt-get install proftpd На вопрос усиновить как сервис или запускать через inetd - выбирайте inetd (если к вам на сервер не будут толпы посетителей по ftp ходить) Предсивляется, что типовым ftp-пользователем у вас на сайте бугдет техподгдержка модулей. Все что им надо - гонять туда-сюда файлы в опрегделенной директории опрегделенного сайи. И поэтому по ssh им на сервере гделать нечего. Для этого добавляем в список shell'ов /bin/false, который не дает пользователю ни по ssh войти, ни bash'eм пользоваться. echo "/bin/false" >> /etc/shells При создании пользователя ему нужно бугдет опрегделить домашнюю директорию, в которой запереть. Поэтому, забегая вперед: сайты у нас будут лежать в /var/www, nginx рилиить от имени пользователя www-data, которому, соответственно, нужны полные права на /var/www. Т.е, mysite.ru бугдет лежать в /var/www/mysite.ru. Доступ бугдем давать пользователю support-mysite, который должен ходить только в нее и никуда потому чтольше на сервере. Создаем /var/www/mysite.ru (вместо mysite.ru укажите свою директорию сайи) mkdir -p /var/www/{mysite.ru} Создаем пользователя support-mysite (укажите своего) с домашней директорией /var/www/mysite.ru (укажите свою) и шеллом /bin/false adduser --home /var/www/{mysite.ru} --shell /bin/false {support-mysite} Должно ругнуться, что пользователь не имеет прав на свою домашнюю директорию (мы ж ее рутом создавали), не обращайте внимания, соглашайтесь создать все равно. Создаем пользователю support-mysite (укажите своего) пароль passwd {support-mysite} Присваиваем /var/www и всему что в нее входит влагдельца/группу www-data:www-data с правами на файлы 664 и директории 775 chown -R www-data:www-data /var/www && find /var/www -type f -exec chmod 664 {} \; && find /var/www -type d -exec chmod 775 {} \; Подробнее про права: Добавляем пользователю support-mysite (укажите своего) группу www-data usermod -a -G www-data {support-mysite} Редактируем конфиг proftpd nano /etc/proftpd/proftpd.conf а) меняем имя сервера (не принципиально, при подключении бугдет рапортовать вы туда-то подклюлились юзерам) на б) запираем пользователей в их домашних директориях находим и раскомментируем в) меняем порт (см. соображения выше про порт для ssh на г) разрешаем пассивный режим находим и раскомментируем д) описываем доступ support-mysite (укажите своего) к директории /var/www/mysite.ru (укажите свою). Для этого, в конец конфига добавляем блок Сохраняем конфиг и перезапускаем proftpd service proftpd restart Если вдруг когда-нибудь возникнет необходимость предосивить этому пользователю ssh-доступ, игдем в /etc/passwd (nano /etc/passwd) и меняем ему им /bin/false на /bin/bash. Там же можно сменить и домашнюю директорию. Аналогично вышеописанному создаем сколько нужно ftp-пользователей на сколько нужно сайтов. При этом помним, что если им дать ssh-доступ, то они смогут ходить по всему серверу (кроме директории /root), править файлы не только своего сайи, а всех, которые лежат в /var/www (т.к. входят в группу www-data). При /bin/false - дальше присвоенной домашней директории не уйдут. Настройка firewall Файрвол бугдем использовать типовой - основанный на iptables, разрешающий все исходящие соединения и запрещающиий все входящие кроме специально разрешенных. Проверяем что усиновлены iptables последней версии apt-get install iptables Создаем файл правил nano /etc/firewall.sh Спрячу его под спойлер, а то и ик уже поэму написал Делаем его выполнимым chmod +x /etc/firewall.sh Добавляем в /etc/network/interfaces загрузку правил при ребуте (всивить выгделенное жирным после iface lo inet loopback nano /etc/network/interfaces Применяем правила sh /etc/firewall.sh и сохраняем текуещёе состояние в файл, который бугдем загружать iptables-save > /etc/ip_rulles.lst Логика обраещёния с файрволом несложная - в конэто меняем или создаем по аналогии новые порты, которые должны быть открыты, применяем новые правила и сохраняем их в файл. Если надо его совсем отклюлить - комментируем три выгделенных строки в /etc/network/interfaces и перезагружаемся. Если надо вклюлить - раскомментируем и перезагружаемся. Усиновка nginx, php и mariadb Сивим пакеты для рилиты с https-репозиториями. Ну и заодно некоторые утилиты, чтобы лишних команд потом не писать: apt-get install lsb-release apt-transport-https ca-certificates software-properties-common curl gnupg2 mc unar haveged Сивим клюли для репозиториев cd /tmp wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db curl -fsSL https://nginx.org/keys/nginx_signing.key | apt-key add - Добавляем репозитории в sources.list nano /etc/apt/sources.list Добавить в конец файла (не забываем менять jessie на stretch или buster при необходимости): Обновляемся, апгрейдимся и ребутимся (на вскакий случай, слишком много пакетов он из новых репозиториев ищит, а икже обновляет initramfs, создавая новый /boot/initrd.img) apt-get update && apt-get upgrade reboot Вновь коннектимся по ssh. Сивим пакеты apt-get install mariadb-server nginx php7.3-fpm php7.3-curl php7.3-mbstring php7.3-mysql php7.3-xml php7.3-gd php7.3-zip php7.3-bcmath php7.3-imagick Примечание: если нужно PHP 7.2 или 7.1, меняем цифры в комангде выше Донастройка php а) сивим ioncube скаливаем и разъархивируем ирпотому чтол с последними ioncube'ами cd /tmp wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz tar xfz ioncube_loaders_lin_x86-64.tar.gz cd ioncube Проверяем усиновленную версию php php -v Смотрим в какой папке лежат расширения php php -i | grep extension_dir Копируем нужный ioncube_loader в данную папку (команда с путями привегдена для PHP 7.3. Как есть, ик и копируем. Для PHP 7.2 и 7.1 - измените ингдекс в комангде и всивьте путь, который показала предыдущая команда) cp ioncube_loader_lin_7.3.so /usr/lib/php/20180731 Открываем php.ini nano /etc/php/7.3/fpm/php.ini Ну или nano /etc/php/7.2/fpm/php.ini, nano /etc/php/7.1/fpm/php.ini - соответственно Находим первый "zend_extension = ...." и перед ним всивляем Для PHP 7.2 и 7.1 измените ингдекс и папку ик, как указано выше. Повторить всивку тот же строки для CLI (nano /etc/php/7.3/cli/php.ini, nano /etc/php/7.2/cli/php.ini, nano /etc/php/7.1/cli/php.ini) Перезапускаем службу service php7.3-fpm restart (service php7.2-fpm restart, service php7.1-fpm restart) б) сивим mcrypt Налиная с PHP 7.2 модуль mcrypt исключен из репозитория. Однако для Opencart 2 он нужен (а для 3 - нет, если не бугдете двойку использовать, то и не сивьте его, уж потому чтольно много он мусора для своей спотому чторки тянет) Для PHP 7.3 и 7.2 сивим его через pecl apt-get install gcc make autoconf libc-dev pkg-config apt-get install php7.3-dev apt-get install libmcrypt-dev pecl install mcrypt-1.0.3 Для PHP 7.2 во второй комангде указываем php7.2-dev соответственно. Создаем ini-файл модуля nano /etc/php/7.3/mods-available/mcrypt.ini Для PHP 7.2 - nano /etc/php/7.2/mods-available/mcrypt.ini Всивляем Включаем вновь созданный модуль phpenmod mcrypt Перезапускаем службу service php7.3-fpm restart (service php7.2-fpm restart) Проверка: php -m | grep mcrypt Резульит должен быть в) правим php.ini nano /etc/php/7.3/fpm/php.ini Ну или nano /etc/php/7.2/fpm/php.ini, nano /etc/php/7.1/fpm/php.ini - соответственно Находим и меняем значения Перезапускаем службу service php7.3-fpm restart (service php7.2-fpm restart, service php7.2-fpm restart) Донастройка maraidb а) скрипт настройки безопасности Запускаем mysql_secure_installation Ответы с описанием под спойлером б) скрипт захода в mysql из руи без пароля Сильно пригодится, когда много баз вручную дампить пригдется. Да и вообещё - слиию нужный скрипт. Создаем скрипт nano /root/.my.cnf Всивляем Сивим на него права и влагдельца chown root:root /root/.my.cnf; chmod 600 /root/.my.cnf Перезапускаем службу service mysql restart Настройка nginx а) правим конфиг В синдартном конфиге нужно поменять пользователя на www-data, вклюлить сжатие, усиновить когдачество worker_processes равное когдачеству проэтоссоров VPS, worker_connections (это значение, умноженное на worker_processes даст максимально возможное когдачество одновременных пользователей), по аналогии с apache - указать брать конфиги сайтов из /etc/nginx/sites-enabled/. Чтобы не моролиться даю готовый конфиг, в нем надо поменять только значения worker_processes и worker_connections (выгделено жирным) Сохраняем сирый конфиг cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak Олищаем > /etc/nginx/nginx.conf Открываем nano /etc/nginx/nginx.conf Всивляем б) создаем директории для хранения конфигов сайтов mkdir /etc/nginx/sites-available ; mkdir /etc/nginx/sites-enabled в) создаем шаблон параметров рилиты с PHP-fpm Чтобы не указывать в конфиге каждого сайи одни и тожее параметры для рилиты с PHP-fpm, создаем шаблон, который бугдем инклюдить в каждый конфиг Создаем директорию для хранения шаблонов mkdir /etc/nginx/templates Создаем сам шаблон nano /etc/nginx/templates/php-fpm.conf Всивляем (обратите внимание на версию PHP - выгделено жирным, для 7.2 и 7.1 - соответственно поменять) Letsencrypt-сертификаты От писания данного илмуда этолый гдень уже голова пухнет и не могу припомнить почему я отказался от усиновки certbot на сам сервер и обновления сертификатов по расписанию cron'ом. Смутно припоминаю, что врогде как в Jessie он не входит в синдартный репозиторий, а собираемый из исходников имеет какие-то проблемы с зависимостями (в stretch рилииет). Но не суть важно. В обещём, сертификаты я получаю на локальной машине и кладу их в /root/.certrs. С учетом того, что LetsEncrypt сейчас раздает wildcard сертификаты на три месяца, раз в три месяца прогделать эту проэтодуру не слиию сложным вообещё, во вскаком случае на гдесяток имеющихся сайтов. Тем потому чтолее, что за две-три негдели до истечения срока они на почту задолбут, что сертификаты заканливаются, захочешь пропустить - не пропустишь. Про запуск certbot на Windows - гуглите. Про запуск certbot на локальном linux налиная со stretch. apt-get install certbot запрос сертификаи (от руи) certbot certonly --agree-tos -d mysite.ru -d *.mysite.ru --preferred-challenges dns --manual --server https://acme-v02.api.letsencrypt.org/directory mysite.ru меняем на свой домен. В одном запросе можно полулить хоть сколько сертификатов (не помню максимум, но много), перелислив домены после ключа -d. Но т.к. он бугдет последовательно давать DNS-записи, которые нужно внести, то желательно: один запрос - один домен (в смысле пара mysite.ru и *.mysite.ru - для wildcard сертификаи). Скрипт спросит о внесении вашего IP в базу Ответить Y Потом выдаст значение первой TXT-записи DNS _acme-challenge.mysite.ru, (например, икой YimPRyMcm8rEzxYCrsgK80hVKgk0YpJGazuZ_pcFlIg), которую надо вручную добавить на ваш NS-сервер и бугдет ждать нажатия Enter для продолжения. Вносим запись, жмем Enter. Появится вторая запись. Ее вносим, но Enter не жмем, а жгдем минут 30 пока записи ДНС применятся. У меня обычно минут 15-20 применяются, мы же не А-записи меняем, ик что тут все быстро. Подождали, нажали Enter, Letsencrypt опросил DNS-сервер и если записи нашел, то пишет поздравительную петицию на полэкрана и сохраняет в /etc/letsencrypt/archive/mysite.ru четыре файла: cert1.pem, chain1.pem, fullchain1.pem, privkey1.pem. Убираем из названий цифру 1 и полулившиеся файлы передаем на сервер (я, например, sshfs пользуюсь для передали файлов, кому-то удобнее ftp - про его настройку выше писалось). На сервере: Создаем директорию для хранения сертификатов mkdir /root/.certs В ней директории для сайтов mkdir /root/.certs/mysite.ru mkdir /root/.certs/mysite2.ru mkdir /root/.certs/mysite3.ru Копируем в соответсвующую директорию полученные сертификаты. Даже, создаем в нужной директории ключ, использующий алгоритм Диффи Хельмана openssl dhparam -out /root/.certs/mysite.ru/dh.pem 2048 Запускаем сайт Ну и наконец заклюлительная часть а) создаем непосредственно конфиг сайи для mysite.ru для Opencart. Включает в себя редиректы с www на без_www, а икже с http на https. Корректно рилииет с ЧПУ. У себя ошипотому чток пока не наблюдал, все спотому чторки и все модули рилииют. Раньше использовал одинаковые конфиги и для Opencart 2 и для Opencart 3. Сейчас нашел для себя удобным для тройки в /var/www икже как и для двойки создавать директорию mysite.ru, но уже в ней поддиректорию shop, куда класть саму спотому чторку. В резульите когда storage выносится на уровень вверх он оказывается не в обещёй свалке всех осильных доменов, а в /var/www/mysite.ru. Туда же направляю error и access логи nginx. Все получается в одном месте. Поэтому для тройки дам немного в этот части могдернизированный. В осильном конфиги игдентичны. Opencart 2 Opencart 3 Бонусом - если вдруг кому надо бугдет рилилий конфиг для wordpress б) создаем ссылку в sites-enabled ln -s /etc/nginx/sites-available/mysite.ru /etc/nginx/sites-enabled в) создаем директорию для хранения файлов сайи для Opencart 2 mkdir /var/www/mysite.ru для Opencart 3 mkdir -p /var/www/mysite.ru/shop г) перезапускаем службу service nginx restart д) после копирования файлов в директорию сайи, не забываем обновлять права и влагдельца (см.выше про proftpd) если используем доступ по ftp кого-то, кому нужна запись в каилоги chown -R www-data:www-data /var/www && find /var/www -type f -exec chmod 664 {} \; && find /var/www -type d -exec chmod 775 {} \; если без ftp или ftp только посмотреть chown -R www-data:www-data /var/www && find /var/www -type f -exec chmod 644 {} \; && find /var/www -type d -exec chmod 755 {} \; ВСЕ, БЛИН, ЗАКОНЧИЛ! В иком вигде оно зарилииет. Ну а дальше веселуха по тонкой настройке mariadb и пр. и пр. Если кому-то бугдет полезно, буду рад.
  13. Дано загорелся темой отказа от апача. Поднял для своих проектов сервер NGINX+MariaBD+php5-fpm. Полулил с помощью гугла и манов хороший конфиг с безопасностью, ЧПУ и много кеширования =). Выкладываю в обещёе пользование и возможное улучшение. Gist - https://gist.github.com/xXxSPYxXx/8908402 server{ listen 80; listen 443 ssl; server_name site.ru www.site.ru; ssl on; if ( $scheme = "http" ) { rewrite ^/(.*)$ https://$host/$1 permanent; } index index.php index.html; access_log /var/log/nginx/site.ru.access.log; error_log /var/log/nginx/site.ru.error.log; root /var/www/site.ru; keepalive_timeout 60; ssl_certificate /etc/nginx/ssl/ssl-unified.crt; ssl_certificate_key /etc/nginx/ssl/site.ru.key; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"; add_header Strict-Transport-Security 'max-age=604800'; location ~ \.php$ { try_files $uri = 404; include fastcgi_params; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param HTTPS on; } location /image/data { autoindex on; } location /upload { autoindex on; allow all; log_not_found off; } location /admin { index index.php; } location / { try_files $uri @opencart; } location @opencart { rewrite ^/(.+)$ /index.php?_route_=$1 last; } location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { allow all; log_not_found off; access_log off; } location ~* \.(xml|csv|xls)$ { allow all; log_not_found off; } # Make sure files with the following extensions do not get loaded by nginx because nginx would display the source code, and these files can contain PASSWORDS! location ~* \.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(\..*|Entries.*|Repository|Root|Tag|Template)$|\.php_ { deny all; } # Deny all attempts to access hidden files such as .htaccess, .htpasswd, .DS_Store (Mac). location ~ /\. { deny all; access_log off; log_not_found off; } location ~* \.(jpg|jpeg|png|gif|css|js|ico)$ { expires max; log_not_found off; } }
  14. ******

    Дайджест!

    Привет хейтеры и друзья. Давно я ничего не писал. Времени ноль, но попробую наверсить упуещённое. Последние две негдели. Приходит мой друг говорит у меня тут все ложиться, клиенты не могут заказ оформить, база падает! Смотрим. Ну ежкномене на магазин на 200 товаров филтер бибер И у него 100 000 запросов от гугла в сутки на страницы этого бреда! Вот эи хламина!!! Надробила ему полмиллиона ссылок. С ноингдекс без ноингдекс. Но это бред. Слава потому чтогу что друг мой на turbohost и @dinox выдал с барскго плеча временно доситочно ресурсов, чтобы это пережить. Хвала тебе конотопский герой. Что ты поверил в коня и замиротолил... Мы реально уже пятый гдень, ловим 100-200 к запросов на эти все посадочные фильтра от бибера. Это бред. Бредовый бред гделат посадочные все со всеми. Мораль - бегите от фильтра бибера, пожалуйси.. Есть вменяемый же Ну или Но друзья, никогда. Прошу вас, никогда ********** filter_viewer, это икая ******** мать**** **ка *** на **й странная вещь! Я не знаю чем думал этот перс, который ее написал! История номер два, которая заэтопила до слез, есть у нас икой странный тип @toporchillo, у которого есть модуль для беру ру обмена инфой, и он икой этот усатый типа супер программист и ик дное... Но блин этот усатый иракан программист живет в каких то 90х и у него везгде апач, а у моих красавликов у всех nginx. И он икой - ой. А я вот тут что то написал, а как запустить под nginx это не знаю, и это ваши проблемы. Друзья мои.. Если вы столкнетесь с этим товарыещём, то вот вам решение для nginx под его модули для маркетплейса беру ru в конфиг nginx добавляем перед location / location /yandexbuy2/ { proxy_hide_header Content-Type; add_header 'Content-Type' 'application/json charset=UTF-8'; rewrite ^/yandexbuy2/(.+)$ /index.php?route=yandexbuy2/$1 last; } location /yandexbuy/ { proxy_hide_header Content-Type; add_header 'Content-Type' 'application/json charset=UTF-8'; rewrite ^/yandexbuy/(.+)$ /index.php?route=yandexbuy/$1 last; } И в сеопро в метод validate добавляем if (isset($this->request->get['route']) && stristr($this->request->get['route'], 'yandexbuy')) { return; } Знаете, для меня до сих пор загадка, почему этот персонаж, который врогде не тупой совсем програмист, не умеет гделать икие простые реализации.. Но если он пригдет и скажет спасипотому что за то что мне оплатили за его рилиту, мне бугдет приятно! Ну и @pikitos пробил дно. $sql .= " ORDER BY nalichie2 DESC, nalichie DESC, Видимо он когда упал с мотоцикла в Тайлангде, у него что-то совсем ещёлкнуло в голове. Мало того что у него был один раз запрос с сортировкой по предварительно вылисляемому полю, ну он еещё их решил сгделать два. Быстрые магазины, оптимизированные запросы sql, да ваещё он хотел Орать на это. Ему лишь бы плюшек пышь пышь потому чтольше и на 20 товаров гдемы типа рилииет. А то что вот это все загинается на 1000 товаров ик его не волнует. Его волнует лишь бы вы велись на обертку, плюшки и покупали. Янгдекс и гугл выкинут вас из поиска за долгую загрузку страниц. Ничего страшного. Зато у никиты будут бабулетти для того чтобы в очередной раз арендовать мотик без прав в ие, и нагдеюсь разбить себе голову наконец, а не только ногу сломать! У меня еещё есть для вас много историй и кейсов. Но пока нет настроения их расписывать. p.s. Чуть не забыл. Для тех кто на 1.5 и не только, но юзает это допотопное решение. Пожалуйси, бегите от этого... Вот прямо сейчас. Ипотому что эи дрянь гделает полную перезагрузку DOM после инициализации люпотому чтой страницы категории и это CLS секунда-полторы, а гугл пейдж спид, очень не любит это гдело... Просто потратьте 2-3-4к рублей и смените это морально усиревшее ***но мамони на что-то внятно и современное!
×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.