Николай Савин

Николай Савин

С нами с 01 января 1970; Место в рейтинге пользователей: #2
Николай Савин
28 августа 2025, 21:31
0
Вот тут собрана вся информация modx.pro/about
Николай Савин
22 августа 2025, 15:45
+7
Алексей скромничает, он за эту неделю довольно много работы выполнил, закрыв большинство известных нам багов. Мы с @Иван Бочкарев от лица сообщества выплатили Алексею скромные 10 000 рублей вознаграждения из фонда, накопленного за счет ваших пожертвований друзья!
Николай Савин
06 августа 2025, 09:17
1
+1
То, что ты нашел в принципе актуально. Так и делают.
Попробуй вот такой конфиг

server {
    listen 80;
    server_name example.com www.example.com;
    root /home/sites/example.com;
    index index.php;
    client_max_body_size 30M;
    
    # Новый блок для статических файлов с кешированием
    location ~* \.(jpg|jpeg|gif|png|svg|ico|pdf|mp4|webm|ogg|mp3|wav|ttf|otf|woff|woff2|eot)$ {
        # Срок действия кеша в браузере (аналог Expires в Apache)
        expires 1M; # access plus 1 month
        
        # Заголовок для указания, что кеш публичный (аналог Header append Cache-Control "public")
        add_header Cache-Control "public";
    }

    # Отдельный блок для CSS, JS (у них у вас срок больше)
    location ~* \.(css|js)$ {
        expires 2M; # access plus 2 months
        add_header Cache-Control "public";
    }

    location / {
        root /home/sites/example.com;
        if (!-e $request_filename) {
            rewrite ^/(.*)$ /index.php?q=$1 last;
        }
    }
    
    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(.*)$;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_ignore_client_abort on;
        fastcgi_param  SERVER_NAME $http_host;
    }

    # Правило для запрета доступа к файлам Apache
    location ~ /\.ht {
        deny  all;
    }
}
Николай Савин
18 июля 2025, 17:26
+1
Ну наверное внутри не было компонентов с использованием автозагрузки, это вполне возможно.
Тогда PHP внутри пофиг откуда загружать код.
Николай Савин
17 июля 2025, 22:21
+1
Вынос каталога core за пределы публичной части в MODX3 запрещен, из за особенностей работы Composer
Николай Савин
17 июля 2025, 22:20
0
Так миниатюры создает не компонент, а подключенная библиотека Glide 3.0.1 — Она либо поддерживает работу с PDF, либо нет (я не смотрел)
Соответственно автор может только своевременно обновлять либу, и никак не в силах предсказывать ее дальнейшее развитие
Николай Савин
13 июля 2025, 11:46
0
Иван, а чего не пользуешься докой сообщества? Принципиально у себя размещаешь?
Николай Савин
13 июля 2025, 11:44
0
Основана на лучшей из существующих PHP библиотек (насколько я знаю) Intervention Image — за это прям мое почтение. Почти наверняка будут вопросы — а почему бы не использовать уже встроенную в MODX либу phpthumb, зачем на ровном месте тащить что-то другое. Таков современный мир — микросервисы решают.
Николай Савин
30 июня 2025, 19:19
0
Ну держать весь код проекта (за исключением gitignore) в гите как будто промышленный стандарт. Я давно не видел не одного серьезного проекта, который бы работал как-то по другому.
Николай Савин
28 июня 2025, 11:21
0
Искренне не понимаю, что мешает сделать тоже самое через git status, и если будет получен непустой ответ — отправить письмо админу с содержанием ответа.
Николай Савин
14 июня 2025, 09:40
0
ну какие молодцы. Научились докером пользоваться.
Николай Савин
10 июня 2025, 19:35
1
+1
Здравствуйте. Способов взлома существует множество. И кстати можно войти в админку так, чтобы записи об этом не было.
Перечислю варианты
— Обиженный вами программист скрыто вошел и сделал плохое. Это можно сделать даже без пароля или с отключенной учетной записью (если он спец)
— Сайт старый. Есть дыры безопасности. Обновляться до свежих версий очень важно. Можно обновляться сразу до последней 2.8.*
— Встречаются компонент с дырами, на моей памяти Gallery был таким. Компоненты желательно обновлять до свежий версий.
— Бывают проблемные хостинги, которые не изолируют сайты и пропускают заразу от соседних сайтов.
— Бывает и собственная неаккуратность админов и менеджеров.

Итого. Обновите MODX. Обновите компоненты. Напишите какой у вас хостинг, может чего подскажем.
Есть антивирусы для сайтов. Часто встроены в вашу хостинг панель. Проверьте на вирусы. Это минимум.

Ну и если очень важный проект — лучше заказать обследование его на безопасность.
Николай Савин
03 июня 2025, 21:25
0
Эх хорошо ответил. Лев Толстой бы лучше не написал
Николай Савин
30 мая 2025, 19:57
0
Пишется небольшой сниппет, который получает список «непустых» категорий. Перечень ID кладем в плейсхолдер.
Запускаем сниппет ДО вызова pdoMenu
В pdoMenu — дописываем параметр resources и вставляем в него плейсхолдер из шага выше
Николай Савин
26 мая 2025, 13:13
0
Максим, вопросы нужно задавать в разделе вопросы, а не забивать в одно лицо комментами новостную публикацию. Если тебе так проще заведи заметку «Осваиваю MS3 c нуля» и веди там свой блог.
Николай Савин
09 мая 2025, 20:00
+1
Перенес в готовые решения
Николай Савин
19 марта 2025, 18:43
+2
Hello @Henk Everts
Nice to meet you. Thanks for the translate. It is awesome.