Задать вопрос
  • Как правильно передать скалярные параметры в сервис (проект Symfony)?

    BoShurik
    @BoShurik Куратор тега Symfony
    Symfony developer
    Пока похоже на то, что приложение пытается зарегистрировать все сервисы, которые находятся в папке src и у него это не получается из-за недостающих параметров. При этом бандл регистрируется и подключает свои сервисы на предыдущем шаге, т.е. приложение пытается перезаписать эти сервисы неверными дефинишенами

    Попробуйте добавить в исключение директорию с бандлом
    #config/services.yaml
    services:
        App\:
            resource: '../src/'
            exclude:
                - '../src/TestBundle/'
                - '../src/CurrencyConverterBundle/'
    Ответ написан
    1 комментарий
  • Как реализовать мониторинг приложения на Bitrix?

    в Bitrix VA для мониторинга предлагается использовать munin и nagios. Увы, ни разу не настраивал.
    Сервер Zabbix - да, прожорлив, но на целевых машинах запускаются клиенты, а они гораздо скромнее.
    Ответ написан
    Комментировать
  • Как настроить блок AllowedIPs в wireguard на ОС: Fedora 40 или Ubuntu 24.04?

    @Drno
    Ну если я правильно понимаю, Вы хотите завернуть только пакеты для Chat внутрь ВПН
    spoiler

    Параметр `AllowedIPs` в конфигурации WireGuard выполняет две функции¹:

    1. **Добавляет маршрут к указанным сетям**. То есть пакеты, адресованные к 192.168.1.1/16, 192.168.1.1/24, 192.168.1.1/32, будут маршрутизироваться через интерфейс WireGuard к этому пиру¹.

    2. **Разрешает пакеты с исходными IP-адресами 192.168.1.1/16, 192.168.1.1/24, 192.168.1.1/32 маршрутизироваться от данного пира по интерфейсу WireGuard**¹. Любой пакет от данного пира с исходным IP-адресом, который не указан в `AllowedIPs`, будет отброшен¹.

    Это не заменяет брандмауэр, но служит важной частью модели безопасности WireGuard¹. Если вы хотите маршрутизировать все через пир, настройте параметр `AllowedIPs` следующим образом: `AllowedIPs = 0.0.0.0/0, ::/0`. Это указывает WireGuard, что все адреса IPv4 (`0.0.0.0/0`) и все адреса IPv6 (`::/0`) должны быть маршрутизированы через пир¹.

    Bing


    Наверно надо еще посмотреть что то насчет правильных маршрутов в linux \ dns
    Точно пропадает именно интернет, а не DNS ?
    проверить можно с помощью ping до google.com и 8.8.8.8
    Ответ написан
    Комментировать
  • Как настроить блок AllowedIPs в wireguard на ОС: Fedora 40 или Ubuntu 24.04?

    ValdikSS
    @ValdikSS
    Вероятно, необходимо добавить маршрут до 8.8.8.8/32 — DNS-резолвера, указанного в конфигурации.

    В Linux, при использовании systemd-resolved, адрес DNS-резолвера привязывается к интерфейсу, а у вас нет маршрута до него через WireGuard. В Windows запросы выполняются через физический интерфейс (либо через несколько резолверов параллельно)
    Прочитайте про проблему XY и больше не составляйте вопросы настолько размыто.
    Ответ написан
    6 комментариев
  • Видео идет с тормозами и не работает ночной режим, почему?

    smorman
    @smorman
    When In Rome do as The Romans do...
    Правильно написали выше, что рано ещё...

    В 22.04, если подключить доп. репы partner и не вошедшие jammy-proposed, то после обновления сведений о репах и обновления системы, Wayland и куча огромная другого просто удалятеся из системы, включая дрова nVidia.

    Поэтому, сначала надо устанавливать всё, что нужно, не подключая эти репы, а потом уже подключать.
    Тогда дрова nVidia остаются.
    Но Wayland всё равно сносится рано или поздно.

    Что-то накосячено у разрабов Canonical с репами и их взаимодействием...

    Посмотрим, что будет в первом, корректирующем релизе 22.04.1
    Ответ написан
    1 комментарий
  • Ubuntu 22.04 постоянно вылезает "Software updates installed", как убрать?

    smorman
    @smorman
    When In Rome do as The Romans do...
    Учи английский!

    Чтобы уведомления не надоедали, у тебя же на скрине внизу слева слайд:
    Do Not Disturb

    что означает:
    Не беспокоить

    Сдвинь его вправо и забудь, как дурной сон...
    Ответ написан
    3 комментария
  • Как открывать поддериктории с index.php не указывая этот файл в url?

    @dodo512
    root /www/pcl.col;
    
    location / {
        try_files  $uri /index.php$is_args$args;
    }
    
    location /project-1 {
        try_files  $uri /project-1/index.php;
    }
    
    location /project-2 {
        try_files  $uri /project-2/index.php;
    }
    
    location ~ \.php$ {
        fastcgi_pass              unix:/run/php/php8.2-fpm.sock;
        fastcgi_split_path_info   ^(.+\.php)(/.*)$;
        include                   /etc/nginx/fastcgi_params;
        fastcgi_param             SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
    Ответ написан
    1 комментарий
  • Как изменить автогенерацию имени переменной с snake_case на camelCase?

    Maksclub
    @Maksclub
    maksfedorov.ru
    есть String plugin для таких изменений
    можно ли автоматом его запускать по файлам — хз, посмотрите

    https://plugins.jetbrains.com/plugin/2162-string-m...

    UPD: ааа, у вас дефолтные название в snake
    тогда наверное сюда615d980aad1ad628218126.png
    Ответ написан
    2 комментария
  • Как настроить работу fpm в связке с nginx?

    SagePtr
    @SagePtr
    Еда - это святое
    Я обычно в папке fpm/pool.d/ для каждого юзера задаю отдельный пул, под которыми работают дочерние процессы php-fpm. У каждого пула - отдельный сокет, к которому подключается nginx. Отдельный сайт на сервере - отдельный юзер (чтобы при взломе одного из них не пострадали другие).
    Скриптам, содержащим какие-либо конфиги или что-то конфиденциальное, меняю права на 600, чтобы nginx их не мог читать напрямую, а только через php-fpm дёргать на выполнение.
    Ответ написан
    Комментировать
  • Как настроить работу fpm в связке с nginx?

    ky0
    @ky0 Куратор тега Nginx
    Миллиардер, филантроп, патологический лгун
    Кто такой "текущий пользователь"? Какой-то человек, который заходит в интерактивном режиме на сервер по SSH/FTP и трогает файлы?

    В таком случае нужно не его добавлять в техническую группу www-data - потому что это может дать ему доступ к общим конфигам и возможности рулить сервисами, а наоборот - www-data добавить в группу пользователя, чтобы веб-сервер и РНР могли трогать его файлы, но не наоборот.
    Ответ написан
    4 комментария
  • Как реализовать создание "сложной" таблицы с помощью PhpSpreadsheet?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    Ведите отдельные счётчики для номера строк для колонок 1-2, 3 и 4.

    Примерный код на скорую руку:
    foreach ($data as $value) {
        $sheet->setCellValue($columns[$c++] . $r, $value->getData1());
        $sheet->setCellValue($columns[$c++] . $r, $value->getData2());
    
        $originalRowId = $r;
    
        $c = 2;
        $c2r = $originalRowId;
        foreach ($value->getData3() as $item3) {
                        $sheet->setCellValue($columns[$c] . $r, $item3);
                        $c2r++;
        }
    
        $c = 3;
        $c3r = $originalRowId;
        foreach ($value->getData4() as $item4) {
                        $sheet->setCellValue($columns[$c] . $r, $item4);
                        $c3r++;
        }
        
        $r += max(count($value->getData3()), count($value->getData4()));
    }
    Ответ написан
    1 комментарий
  • PhpSpreadsheet: Как установить такой формат ячейки, чтобы она принимала текстовые значения, не обрезая в них знак "+"?

    @Kripto77
    Столкнулся с той же проблемой - ответ на шел в доках, возможно кому-то пригодится
    https://phpspreadsheet.readthedocs.io/en/latest/to... - Раздел "Setting a number with leading zeroes"

    В тип string значение ячейки приводится примерно таким кодом
    // Set cell A8 with a numeric value, but tell PhpSpreadsheet it should be treated as a string
    $spreadsheet->getActiveSheet()->setCellValueExplicit(
        'A8',  // координаты ячейки
        "01513789642",   // нужное значение строки
        \PhpOffice\PhpSpreadsheet\Cell\DataType::TYPE_STRING
    );
    Ответ написан
    Комментировать
  • Как запретить создание записи в CPT Wordpress?

    AntonLitvinenko
    @AntonLitvinenko
    HTML coder
    'capabilities' => array(
      'create_posts' => 'do_not_allow'
    ),
    'map_meta_cap' => true,
    Ответ написан
    3 комментария
  • Какое решение выбрать для почтового сервера на VDS?

    jamessvetsky
    @jamessvetsky
    Специалист по почтам и рассылкам
    Знаю, что многие со мной не согласятся, тем не менее считаю, что свой сервер нужно делать либо для крупных организаций, либо фин или с грифом секретно.
    И то не факт что в коробочных версиях нет каких нибудь супердоступов для разработчиков и соответствующих органов. Я уже молчу про поддержку хостинга.
    И я постоянно по ходу своей работы сталкиваюсь с минусами своих почт.
    Попробую перечислить:
    1. Часто занимают место на сервере, приходится переходить на более дорогие тарифы. У части почтовиков место не ограничено совсем.
    2. Веб интерфейс а ля Roundcube - безусловно без рекламы, но он ужасно неудобный. Да, есть сторонние приложения, но их нужно настроить. Преимущество хорошего веб интерфейса - ты можешь зайти с любого компьютера, от клиента, находясь в гостях у родителей или с компьютера жены и комфортно работать.
    3. У хостингов нету, у профессиональных почтовиков есть свои приложения для iOS и Андроид, с подключением без танцов с бубнами
    4. Простота переезда, если почта не на хостинге а отдельно на профессиональной почте. Удобно, то что сайт и почта в разных местах, и переезд сайта не касается почты, и наоборот. Кроме того, на многих профессиональных почтовиках можно в пару кликов мигрировать почту, например надоел майл ру - перешли со всем содержимым на gmail. Переезд почты с хостинга на хостинг часто похлеще, чем танцы с бубнами.
    5. Спам. Да, конечно, всем кажется, что на своем сервере я настрою, ни одного письма спамного не пройдет. В реалии - далеко не всегда так получается, да еще и нужные письма под замес попадают.
    И наконец вишенка!
    6 и последнее. Доставляемость. Постоянно сталкиваюсь, что письма именно с хостингов летят в спам. Вроде все настроили, прописали SPF, DKIM, DMARC... А письмо в спаме. И вот тут начинается. Вариантов гораздо больше чем на том же Майл ру для бизнеса. То HELO и rDNS не выровнены. То с Вашего IP спам шлют. Если он не выделенный. И Ваши письма заодно как спам все определяют. То кто то с соседнего IP разослал спам и пару блек листов закинули весь диапазон провайдера в свои черные списки. То активный менеджер коммерческие отправляет неумело, а получатели на спам кликают, хотя с ними и созванивались. А IP адрес совсем непрогретый...

    А насчет вариантов...
    Можно сделать отдельно почту, а отдельно SMTP. Например бесплатный и безразмерный майл ру для бизнеса и smtp bz с бесплатным тарифом 15000 писем в месяц. С почтами вариантов много. Яндекс Коннект, Google Workspace, Yahoo Small Business. Не устраивают - для особо изысканных варианты из Швейцарии - Migadu, ProtonMail, Infomaniak...
    Ответ написан
    Комментировать
  • Как исправить ошибку после установки postfix&dovecot?

    jamessvetsky
    @jamessvetsky
    Специалист по почтам и рассылкам
    Добрый день, теперь можно по порядку
    1 Нужно выровнять HELO и rDNS. На мой взгляд это самое важное, как я и писал в комментах.
    2. SPF - "v=spf1 redirect=_spf.timeweb.ru ip94.228.118.106 ~all" неправильная. Оператор redirect перенаправляет на запись таймвеба и дальше ничего не читается. Правильно - "v=spf1 include:_spf.timeweb.ru ip:94.228.118.106 ~all" или даже "v=spf1 include:_spf.timeweb.ru a ~all"
    3. DKIM и DMARC нужны
    4. С черными списками у этого IP не особо хорошо
    60a03c2b62a07436772899.jpeg
    Ответ написан
  • Как убрать вертикальную линию (командная строка zsh)?

    Поиграть со шрифтами, уменьшить межсимвольный интервал - настраивать это надо на стороне терминала, тк это не зависит от zsh
    Если разрешение монитора (4к например), то можно выключить сглаживание шрифтов
    Ответ написан
    Комментировать
  • Как настроить редирект с www на без www + HTTPS в Nginx?

    @lexjusto Автор вопроса
    Всем спасибо. Сам пришел к правильному решению. Делюсь с вами:

    server {
        server_name www.example.com example.com;
        return 301 https://example.com$request_uri;
    }
    
    server {
        listen 443 ssl;
    
        ssl_certificate /path/to/server.cert;
        ssl_certificate_key /path/to/server.key;
    
        server_name www.example.com;
        return 301 https://example.com$request_uri;
    }
    
    server {
        listen 443 ssl;
        ssl_certificate /path/to/server.cert;
        ssl_certificate_key /path/to/server.key;
        server_name example.com;
    
        <все локации основного домена>
    }
    Ответ написан
    1 комментарий