• Как проверить исход работы systemctl is-active в Bash-сценарии?

    shambler81
    @shambler81 Куратор тега Linux
    Но у меня был случай когда он работал а сайт лежал притом и fpm работал, а сайт отдавал 500 ( и да бд тоже работала)
    так что я все-же рекомендую идти не от мнения считает ли себя апачь рабочим, а по факту проверять работает ли сам сайт.
    /usr/bin/curl -I http://site.ru 2>/dev/null | head -n 1 | awk -F" " '{print $2}' | grep "200"  || service apache2 restart

    Как алиард это куда как более весомо.
    НУ и от него уже плясать че делать дальше.
    Ответ написан
    Комментировать
  • Какие есть терминальные сервера под линукс?

    shambler81
    @shambler81 Куратор тега Linux
    remmina как клиент лучший
    Ответ написан
  • Проблема c Redirect 301. Почему некорректно срабатывает запись?

    shambler81
    @shambler81 Куратор тега htaccess
    думаю все как всегда
    вы просто непонимаете как работает .htaccess
    1. вы используете форму записи не поддерживающую регулярку.
    2. htaccess читается сверху вниз, соответствено в начале вы дожны указать частные случаи потом общие.
    3. файл читается по кругу пока url не остановятся и [L] это не то что вы думате.
    4. и не менее важное GET не является частью URL с точки зрения mod_rewrite и с ними работать нужно по другому.
    От этого мы получаем Место в файле имеет значение
    И в зависимости от ссылки можно использовать разные виды редиректов, я бы на вашем месте всегда использовал конструкциии через RewriteCond поскольку они позволяют все.
    файл в студию.
    А так же для исключения человеческого фактора используй генератор
    https://donatstudios.com/RewriteRule_Generator
    Ответ написан
    Комментировать
  • Как запустит последовательно команды?

    && упрощённая если предидущая завершилась TRUE
    || - упрощённая если команда завершилась с FALSE
    | - упрощённая форма тунелирования подать предидущий stdout на stdin следующей команде
    comand ; comand2 - выполнить последовательно
    не меняй шел а делай это скажем вот так
    тут скрипт $(/bin/bash echo "hello world") тут продолжение скрипта
    все что в переменной выполнится и вернет уже значение
    Ответ написан
    Комментировать
  • Как применить аргументы для команды из массива строк?

    сделай через функцию и все
    Ответ написан
    Комментировать
  • Как мне для разных сайтов использовать свой php.ini?

    Можно прям тут.
    Опять же у каждого сайта будет свой юзер и група
    listen = /var/lib/php7.4-fpm/web2.sock
    listen.owner = web2
    listen.group = www-data
    listen.mode = 0660
    
    user = web2
    group = client2
    
    pm = dynamic
    pm.max_children = 10
    pm.start_servers = 2
    pm.min_spare_servers = 1
    pm.max_spare_servers = 5
    pm.max_requests = 0
    
    chdir = /
    
    env[HOSTNAME] = $HOSTNAME
    env[TMP] = /var/www/clients/client2/web2/tmp
    env[TMPDIR] = /var/www/clients/client2/web2/tmp
    env[TEMP] = /var/www/clients/client2/web2/tmp
    env[PATH] = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    
    
    php_admin_value[mbstring.func_overload] = 2
    php_admin_value[default_charset] = utf-8
    php_admin_value[max_input_vars] = 10000
    php_admin_value[max_file_uploads] = 500
    php_admin_value[max_execution_time] = 300
    php_admin_value[post_max_size] = 1040M
    php_admin_value[upload_max_filesize] = 1040M
    php_admin_value[pcre.backtrack_limit] = 1000000
    php_admin_value[pcre.recursion_limit] = 100000
    php_admin_value[realpath_cache_size] = 2048k
    php_admin_value[mbstring.internal_encoding] = UTF-8
    php_admin_value[date.timezone] = Europe/Moscow
    php_admin_value[memory_limit] = 256M
    php_admin_value[zend_extension] = opcache.so
    php_admin_flag[opcache.enable] = 1
    php_admin_value[opcache.memory_consumption] = 2048
    php_admin_value[opcache.interned_strings_buffer] = 512
    php_admin_value[opcache.max_accelerated_files] = 100000
    php_admin_flag[opcache.max_wasted_percentage] = 1
    php_admin_flag[opcache.validate_timestamps] = 1
    php_admin_flag[opcache.revalidate_freq] = off
    php_admin_flag[opcache.fast_shutdown] = 1
    php_admin_flag[opcache.save_comments] = 1
    php_admin_flag[opcache.load_comments] = 1
    php_admin_flag[opcache.revalidate_freq] = off
    php_admin_flag[mail.add_x_header] = On
    php_admin_flag[short_open_tag] = On
    Ответ написан
    Комментировать
  • В ноуте есть HDMI и USB-C. Можно ли подключить третий монитор через USB-C?

    Только убедитесь что ваша видеокарта тянет сумммарно тримонитора с вашим разрешением и выбирете нужный вам разветвитель
    https://market.yandex.ru/product--razvetvitel-hdmi...
    Показал первый пропавшийся, посколкьку у меня дисплей порты ( и совершенно другая модель) Но все прекрасно работает, разветвляет на 3 моника без проблем.
    Ответ написан
    Комментировать
  • Существуют визуальные панели управления сервером?

    shambler81
    @shambler81 Куратор тега Linux
    Все бесплатные рабочие адекватные и ставятся в 1 клик
    aapanel - форк китайской основной панели, неплохая много умеет неплохой интерфейс, из особенностей все компилит к себе в папку с бинарников так что ставится очень долго около 2 часов.
    Есть свой маркетплейс там много чего есть платно и бесплатно. Нет русского языка.
    Нет менеджера ssh по умолчанию 1 пользователь ssh, FTP есть.

    aaPanel.png
    ispconfig3 - предпочитаю ее но допиливаю сильно для старта не пойдет, если тебя не устроит чистый apache2 или nignx. Есть русский язык
    %D0%98%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81_ISPConfig.png
    vestacp -простеноко но работает есть тоже все, сам проект мертв но есть рабочие форки.
    user.png
    brainycp - большой богатый, бесплатный но проприетарный умеет много русская поддержка но для старта не советую
    brainycp_screenshot_sections.png
    bitrixvm - тоже неплохо но нет ДНС сервера, собственного ДНС, нет граф интерфейса все с консоли. Работает apache+nginx хорошо оптимизирован.
    bitrixvm1.jpg
    webmini - по настоянию коллеги включаю в список ибо кому-то она тоже нравится.
    Подход к GUI как у brainycp так чтоб яица закрутило. 3 уровневое меню наше все, а кнопка поиска находится выше чем создать сайт.

    1-dashboard.png
    Далее идут менее популярные CentOS Web Panel и тому подобная экзотика возможно она тоже кому-то нравится

    BlueOnyx - ниче не скажу, но выглядит очень достойно
    Install-BlueOnyx-Hosting-Panel-on-Rocky-9AlmaLinux-9-19.png
    Ответ написан
  • DKIM не подхватывает ;( что пропустил?

    shambler81
    @shambler81 Автор вопроса
    Всем спасибо действительно два дня ждал !
    Ответ написан
    Комментировать
  • Почему выдает ошибку Apache?

    а мне нужно две конфигурации, для разных доменов.

    Хмм может для двух доменов два конфига,я не претендую на гениальность но помоем это очевидно
    Ответ написан
    1 комментарий
  • Как узнать реально занятое место файлами?

    shambler81
    @shambler81 Куратор тега Linux
    ncdu
    бротик, ставь и кайфуй, интерактивный лазишь по папочкам смотришь, там уже все по размеру отсортировано и даже с графиком заполнения, рекомендую запомнить утилитку и юзать всегда
    Ncdu_screenshot.png
    Ответ написан
    Комментировать
  • Как вырезать слова из вывода?

    shambler81
    @shambler81 Куратор тега Linux
    sshd -T | grep -i mac | grep --perl-regexp --only-matching ".?mac-[^,]+etm[^,]+"



    Вывод:
    umac-64-etm@openssh.com
    umac-128-etm@openssh.com
    hmac-sha2-256-etm@openssh.com
    hmac-sha2-512-etm@openssh.com
    hmac-sha1-etm@openssh.com


    тут сама регулярка
    https://regex101.com/r/45gMoG/1
    Единственное не совсем понял про
    macs
    по этому исключил его поскольку там разделитель пробел и не понятно что это такое
    если нужен вывод с ним то вот так
    sshd -T | grep -i mac | grep --perl-regexp --only-matching "[^,]*etm[^,]*"
    macs umac-64-etm@openssh.com
    umac-128-etm@openssh.com
    hmac-sha2-256-etm@openssh.com
    hmac-sha2-512-etm@openssh.com
    hmac-sha1-etm@openssh.com
    Ответ написан
    Комментировать
  • Что делать, если Nginx не считывает корневой домен?

    Nginx определяет конфиг по IP адресу и открывается сайт. А если заходить по домену, то возникает проблема — Сайт mydomain.com не позволяет установить соединение.

    нет по server_nameна основание его подставляется конфиг.
    А берет он его из браузера клиента!!!
    Так что у него нет проблем с тем что 100 сайтов на 1 айпи и одном порту.
    А вот
    server {
        listen 80 default_server;
        listen [::]:80 default_server;
    
        server_name _;
    
        return 301 https://$host$request_uri;
    }

    это "мусорка" то есть любой домен не объявленный явно, то есть это /dev/null для nginx
    тут не должно быть реальных сайтов, имен по этому у тебя сайт открывается по IP ибо такогодомена нет и срабатывает правило хз отдам ченить с этой папки, тут по идее должен лежать файлик , братик все работает ты попал на нужный сервер но домен не опознан.
    Все сайты нужно объявлять явно. server_name mydomain.com; server_name mydomain2.com;
    Если же у тебя все сайты лежат в одном месте и ЧПУ отвечает за их отдачу то просто укажи их все сразу
    server_name mydomain.com  2mydomain.com 3mydomain.com ;


    PS
    Вижу колхоз совхоз.
    Рекомендую пока поставить веб панельку и поработать через нее дабы они ставятся в 1 клик ( желательно на чистую ос). Не нужно уходить в чистую консоль поскольку вначале посмотри как собираются веб сервера там целая портянка демонов от FPM до certbot и как они взаимодействуют нужно вначале посмотреть понять а потом уже мутить свое.
    Вот у меня к примеру более 100 серверов, и больше 15 лет практики но половина серверов с веб панелями ибо нет смысла руками чет ковырять, это избавляет от человеческого фактора и я ценю время, хотя да местами кастомлю панельки сильно.
    И даже есть места где их нет, но там свои проблемы поверь мне, когда ты читаешь конфиги 10 летней давности созданы непонятно кем, некоторые строки комментировать некому. в общем в голой установке тоже есть косяки.
    ispconfig3 - я на ней но не всем подойдет, поскольку я ее кастрюлю сильно но если тебе чисто бэк то подойтет изи.
    vestacp - дешево сердито но работает
    aapanel - хорошее соотношение цена качество удобство, нет русского, и очень долго ставится около 2
    часов !, в смысле сама но вот так вот ;)
    brainycp - одним словом "багато" интерфейс не очень интуитивен и для начинающих может вызывать бурю эмоции, но умеет конечно до талого, проприетарен, способ заработка у ребят вообще непонятен но русские и сап даже есть, но я бы не стал их брать ибо интерфейс мое почтение все через поиск ;) ибо без него ты даже сайт не создашь сразу .
    Ответ написан
    Комментировать
  • Какая утилита подобна wget, но умеет делать upload дерева файлов по https?

    shambler81
    @shambler81 Куратор тега Linux
    Неправильно мыслишь.
    1. если большое дерево то это будет очень, очень очень долго.
    2. Кто мешает тебе совместить все это собрав в потоке архив и распаковать его на той стороне.
    И так делаем в 1 потоке:
    Архивируем | копируем | распраковываем > ложим. и да в примере архива не будет ни на той стороне ни на той, он будет только в канале
    tar cvfz - --directory /var/www/3dpaneli.ru/web . |ssh root@89.207.93.148cd /tmp/test/aa;tar xvfz -"

    Все плюсы как пофайлового копирования так и плюсы 1 поточного копирования присутствуют
    4. Кто мешает тебе работаь через вебдав он https
    5. csync rsync и тд
    Ответ написан
    Комментировать
  • Как правильно наполнять интернет магазин?

    Стоимость контента на сайте больше самого сайта так было есть и будет.
    Пример сайт стоит 500
    на сайте 10К товаров , на каждую карточку ты потратил 2 минуты, проверил инфу добавил картинку ( не говорю сейчас про сьемки и ретушь)
    Скажем за все это ты потратил
    30 рублей на карточку,
    30*10000=300000
    Но это при идиальных вводных данных.
    Вот и получается качественно оформить контент с одинаковыми картинками по соотношению сторон плюс минус качеству хотя оно должно быть хорошим.
    Проверить качество заполнения, дописать там где ничего нет, то есть открыть коробку и достать паспорт выписать с него.
    эту калькуляцию смело можно умножить на 5.
    А ведь еще и съемка товара может быть
    Так что ответ простой, плати или трать много времени
    Ответ написан
    Комментировать
  • Как переименовать несколько файлов через командную строку?

    find . -name 'php.ini' -exec mv 'php.ini 'php.ini_old  "{}" \;

    find найти от папки и глубже
    . - от текущей
    -name имя файла
    -exec выполниь с этим файлом
    mv - копировать
    {} - подставить путь который найден файнд
    ;\ - забей просто запкрыавет
    Ответ написан
    Комментировать
  • Как сделать красивые url в пагинации в битрикс 1с?

    Никак !!
    Господи меня парой поражают SEO шники которые до сих пор не понимают что сейчас не 2008
    не нужны миллионы страниц в индексе.
    1. ВСЕ страницы на сайте должны иметь ЧПУ
    2. Каждая страничка должна вести на свою категорию.
    3. Нет дублей никаких.
    4. Риал каноникал на всех страницах, на всех, вот просто в хедер засуньте риал каноникал на текущую страничку без гет параметров !
    5. Если у вас страничка с гет то ее точно индексировать нельзя, по этому запрещайте индексировать карзины пагенации и тд, канибализм пока никто не отменял.
    6. Выберете в вашем случае два варианта
    1. спрятать за AJAX в таком случае 1 кнопочка и у вас все работает.
    2. вас не устраивает что вы не можете дать ссылку на 5 страничку не приходя к костылям.
    В таком случае смотрите правило выше ( все страницы с гет уже не попадают в индекс)
    Скажите мне зачем вам в индексе 10 одинаковых страниц отжирающих вес?

    Пример
    У вас запрос
    "Холодильник тефаль"
    У вас есть секция холодильники и тефаль, проблем нет вы на их основе собераете ЧПУ
    НО так же у вас есть и фильтры
    Красный
    от 30 до 36 обьем морозилки
    Количество контуров 2
    евро вилка
    и тд. В общем в совокупности будут запросы которые в интернете по 1-2 за год !
    а таких страниц может быть миллион.
    По этому веса у них быть не должно
    И того
    Важные фильтры ченрез секции и они имеют чпу
    Холодильник тефаль - существует
    Красный холодильник тефаль Высота 30 Ширина 31 с ледообразователем в ценовом дипапзоне от 100 до 142, это идиотский запрос его в индексе быть не должно, а следвоательно вся эта лабудень собирается на гет параметрах, а они у нас мало того что запрещены все полностью к индексации.
    Так еще и риал каноникал у нас стоит и говорит явно что вот эту страничку нужно индексировать.
    Смысл создавать странички от которых толку 0 ?
    Ответ написан
    1 комментарий
  • Как сделать на PHP редирект на другой сервер с сохранением домена?

    В общем это не пхп конечно должен делать
    но если уж прям так хочется на нем то https://github.com/zounar/php-proxy
    ну и балансируйте как вам там будет угодно
    я через него деалал пару раз такие тз как, "Эхочу старые урлы на старом движке а новые на новом".
    соответственно пихаешь в 404 вот эту штуку и смотришь не отдаст ли там 200, ну если и там нет то 404 отдавал.
    В вашем случае по другому, но как ни странно с небольшим допилом работало.
    Ответ написан
    Комментировать
  • Как настроить сертификаты ssl для любого домена ссылающегося на ip?

    https://www.cloudflare.com/ - бесплатно создаеш акаунт для всех этих доменов вместо ДНС включаешь прокси, и выставляешь подставлять сертификать https-http
    кауд сам будет выдавать сертификат и закрывать им соедениние.
    единственное что останется это http соединение до самого клауда.
    Но судя по вашему запросу вы не очень сильно понимаете суть проблемы или описали ее не совсем валидно.
    Ответ написан
    Комментировать