Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила форума

Раздел для общения на любые темы, для которых не нашлось места в остальных разделах. Если Вашу тему можно отнести по смыслу к другому разделу, лучше создайте её там, иначе Вас накажут.

В данном форуме немного понижены требования к Общим правилам форума, а именно:
1. Информативность темы
2. Отходить от первоначального смысла темы

!
В разделе запрещено создавать темы связанные с раскруткой игровых серверов
2 страниц V   1 2

HestiaCP - Shared Hosting (часть 2)

, настройка файлового менеджера filegator
Статус пользователя Gecko
сообщение 20.8.2025, 23:13
Сообщение #1
Стаж: 7 лет 4 месяца

Сообщений: 1247
Благодарностей: 518
Полезность: 346

HestiaCP - Shared Hosting (часть 2) - настройка файлового менеджера filegator
Данный патч исправит работу файлового менеджера который по умолчанию предоставляет доступ пользователям к их домашнему каталогу, патч изменит домашний каталог, на каталог сайтов пользовтеля, пользователю больше не нужно искать каталог с сайтами. Также данный патч добавляет права доступа на все файлы в каталоге пользователя на чтение и скачивание для определённых пакетов, которые пользователь может указать в конфигурационном файле.

Автор патча: Gecko
Совместимость: v1.9.4 (должно работать на более старых/новых версиях панели)



Далее все действия в терминале выполняем с правами суперпользователя (root)

Создаём конфигурационный файл:
Код
cat > /usr/local/hestia/web/fm/permissions_packages.php <<'EOF'
<?php
/**
* List of Hestia packages with restricted permissions (read + download only).
* If the array is empty or the file is missing, no filter will be applied.
*
* Examples:
*   return ['default']; // only "default" package has limited rights
*   return ['default','start']; // "default" and "start" packages have limited rights
*   return []; // no restrictions, all users have full permissions
*/
return [];
EOF


Создаём симлинк на этот файл, а также создаём нужный каталог если его ещё нет:
Код
mkdir -p /etc/hst_conf && ln -sf /usr/local/hestia/web/fm/permissions_packages.php /etc/hst_conf/filegator-permissions-packages.conf


В этом конфигурационном файле можно прописать нужные названия пакетов (тарифных планов) к которым будут применены права доступа на чтение и запись
Код
micro /etc/hst_conf/filegator-permissions-packages.conf


Вот пример настройки:
Код

return ['default']; // только пакет "default" имеет ограниченные права
return ['default','start']; // пакеты "default" и "start" имеют ограниченные права
return []; // никаких ограничений, все пользователи получают полный доступ


Ручная установка патча

Сделайте резервную копию файлов которые будут пропатчены:
Код
cp /usr/local/hestia/web/fm/configuration.php /usr/local/hestia/web/fm/configuration.php.bak
cp /usr/local/hestia/web/fm/backend/Services/Auth/Adapters/HestiaAuth.php /usr/local/hestia/web/fm/backend/Services/Auth/Adapters/HestiaAuth.php.bak


Заменить в файле:
Код
micro /usr/local/hestia/web/fm/backend/Services/Auth/Adapters/HestiaAuth.php


Этот блок кода:
Код
    public function transformUser($hstuser): User {
        $user = new User();
        $user->setUsername($this->hestia_user);
        $user->setName($this->hestia_user . " (" . $hstuser["NAME"] . ")");
        $user->setRole("user");
        $user->setPermissions($this->permissions);
        $user->setHomedir("/");
        return $user;
    }

Замените на этот:
Код
#------------------------------------------------------------------------------
#   Transforms a Hestia user into a FileGator User object  
#------------------------------------------------------------------------------
public function transformUser($hstuser): User {
       $user = new User();
       $user->setUsername($this->hestia_user);
       $user->setName($this->hestia_user . " (" . $hstuser["NAME"] . ")");
       $user->setRole("user");

       $configFile = '/usr/local/hestia/web/fm/permissions_packages.php';
       $permissions_packages = [];

       if (file_exists($configFile) && is_readable($configFile)) {
           $loaded = include $configFile;
           if (is_array($loaded)) {
               $permissions_packages = array_map(
                   fn($v) => strtolower(trim((string)$v)),
                   $loaded
               );
           }
       }

       $userPackage = strtolower(trim((string)($hstuser['PACKAGE'] ?? '')));

      if (!empty($permissions_packages) && in_array($userPackage, $permissions_packages, true)) {
           $user->setPermissions(["read", "download"]);
       } else {
           $user->setPermissions($this->permissions);
       }

       $user->setHomedir("/");
       return $user;
   }

Если нужно чтобы при открытии файлового менеджера не отображались никакие файлы, то нужно эту строку:
Код
$user->setPermissions(["read", "download"]);

Заменить на эту:
Код
$user->setPermissions([]);



Найти в файле:
Код
micro /usr/local/hestia/web/fm/configuration.php

Для старой версии панели инструкция немного другая

Найти следующий блок кода:
Код
    if (in_array($v_user, $user_list)) {
        $root = "/";
    } else {
        $root = "/home/" . $v_user;
    }

и заменить на этот:
Код
    if (in_array($v_user, $user_list)) {
        $root = "/web";
    } else {
        $root = "/home/" . $v_user;
    }


эту строку:
Код
$root = "/home/" . $v_user;

и заменить на эту:
Код
$root = "/home/" . $v_user . "/web"


Автоматическая установка патча

Скачайте скрипт на сервер и распакуйте:
Прикрепленный файл  hst_filegator.sh.zip ( 1,2 килобайт ) Кол-во скачиваний: 1

Код
unzip hst_filegator.sh.zip && chmod +x hst_filegator.sh

Запустите установку патча:
Код
./hst_filegator.sh

Цитата
The patch was installed successfully.
- Backup copies of the files were created:
/usr/local/hestia/web/fm/configuration.php.bak and /usr/local/hestia/web/fm/backend/Services/Auth/Adapters/HestiaAuth.php.bak.
The configuration file permissions_packages.php was created.
A symbolic link to the configuration file was created at /etc/hst_conf/filegator-permissions-packages.conf.


Скриншоты:
Права на чтение и скачивание файлов
Прикрепленное изображение

Все права
Прикрепленное изображение


Опционально делаем симлинки для основных конфигурационных файлов ПУ:
Код
ln -sfn /usr/local/hestia/conf /etc/hst_conf/conf && \
ln -sfn /usr/local/hestia/data/packages /etc/hst_conf/packages && \
ln -sfn /etc/nginx/conf.d/domains /etc/hst_conf/domains && \
ln -sfn /usr/local/hestia/data /etc/hst_conf/data


Теперь все пакеты доступны по адресу: /etc/hst_conf/packages
Все настройки панели доступны по адресу: /etc/hst_conf/conf
Конфиги сайтов тут: /etc/hst_conf/domains
Тут все основные данные ПУ: /etc/hst_conf/data
Конфигурационный файл лимита фтп-пользователей: /etc/hst_conf/pkg-ftp-limits.conf
Конфигурация файлового менеджера: /etc/hst_conf/filegator-permissions-packages.conf

Отредактировал: Gecko, - 7.9.2025, 7:26


Не отвечаю на ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Metal Messiah
сообщение 30.8.2025, 13:51
Сообщение #2


Иконка группы

Стаж: 13 лет

Сообщений: 2457
Благодарностей: 1482
Полезность: 770

HostGame.cf
В целом, неплохая инструкция. Единственное "но" - я бы рекомендовал MyVesta.
Классическая VestaCP пошла не по тому пути, она слабо обновляется, но при этом изгадили фронтенд без возможности отката до предыдущей версии. У MyVesta ситуация намного лучше. Несмотря на то что HestiaCP это форк VestaCP, в ней изначально многое сделано через задницу. Начиная от кривого фронтенда и заканчивая ошибок архитектуры и несовместимости с другими форками (бекап весты можно развернуть на хестию, наоборот нельзя). Да и жрёт она ресурсов поболее чем остальные форки.

Моё мнение - для хостинга лучше подойдёт MyVesta + добавленная через php-fpm поддержка нескольких разных версий PHP. Это вполне реализуемо незначительными модификациями. Даже переключение работы через Apache либо без Apache делается через темплейты. В идеале конечно чтобы кто-то с кучей свободного времени подключился к разработке MyVesta либо форкнул её.

Скажу по секрету что мой хостинг игровых серверов (hostgame.cf, давно закрыт) был реализован на VestaCP. Добавление пользователей, ftp пользователей, создание баз данных итд - всё было с использованием скриптов VestaCP.


Полезные публикации - ссылки у меня в профиле. Ссылка на плагин против спама на сервере StopServerSpam там же.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Gecko
сообщение 30.8.2025, 17:29
Сообщение #3
Стаж: 7 лет 4 месяца

Сообщений: 1247
Благодарностей: 518
Полезность: 346

Metal Messiah, Мне с головой хватает hcp. Эту ПУ я знаю на уровне разработчика, по этому официальными ресурсами почти не пользуюсь. По поводу myVesta - не вижу особой разницы судя по changelog. На hsp я много чего сделал, думал вначале создать форк, но потом передумал, не вижу в этом никакого смысла, мне проще было написать патч.


Не отвечаю на ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Metal Messiah
сообщение 31.8.2025, 16:56
Сообщение #4


Иконка группы

Стаж: 13 лет

Сообщений: 2457
Благодарностей: 1482
Полезность: 770

HostGame.cf
Сколько людей - столько мнений. Принципиальной разницы по функционалу действительно нет, но по начинке (my)Vesta более экономна, чем Hestia, и на мой взгляд сделана грамотнее. Тоже хотел сделать форк, подправить то что мне не нравится и ставить со своего форка, а то есть риск что основной разработчик рано или поздно что-то поломает и не захочет откатывать.


Полезные публикации - ссылки у меня в профиле. Ссылка на плагин против спама на сервере StopServerSpam там же.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Gecko
сообщение 31.8.2025, 21:04
Сообщение #5
Стаж: 7 лет 4 месяца

Сообщений: 1247
Благодарностей: 518
Полезность: 346

Metal Messiah, моё мнение обусловлено знанием всех особенностей HCP, там безопасность на довольно хорошем уровне, но для частного использования, использование HCP для виртуального хостинга нужно патчить. Там и ограничение памяти (cgroups), и размер БД пользователей, и отключение SSH доступа вместе с запретом на создание ключей простыми пользователями, для админов всё должно работает. Обязательно - ограничение прав доступа. Обязательно изменить скрипт резервного копирования v-backup-user - в нём нужно прописать жесткое исключения для conf, добавить мониторинг процессов а также обязательный контроль Inode (Ext4) для пользователя, настроить базовую защиту на уровне hestia/nginx/sbin/hestia-nginx - самой панели так и для сервера сайтов пользователей nginx+apache2 или nginx, ограничит CronJob оболочкой rbash, довести до ума fail2ban, лимит фтп-пользователей, ограничения filegator и его настройка, обязательно допилить шаблоны, и много чего другого... Это базовый минимум не считая тонкую настройку HCP и других служб сервера. Там много чего нужно делать чтобы говорить о базовой безопасности в многопользовательском режиме.

Резюмирую
HCP или myVesta идеально подойдут для селфхостинга, но для виртуального хостинга в многопользовательском режиме обе панели дырявые из коробки и не годятся для этого, по этому их нужно патчить, и настраивать вместе сервером на котором они установлены, но в итоге можно получить отличную ПУ которая будет решать все ваши задачи абсолютно бесплатно. Тот же ISPM Lite - только по подписке за 4$ в месяц у реселлеров.


Не отвечаю на ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Metal Messiah
сообщение 2.9.2025, 23:25
Сообщение #6


Иконка группы

Стаж: 13 лет

Сообщений: 2457
Благодарностей: 1482
Полезность: 770

HostGame.cf
Согласен, допиливать нужно всё. А ISP последние уже лет 5 дрянь продукция, пользоваться невозможно.


Полезные публикации - ссылки у меня в профиле. Ссылка на плагин против спама на сервере StopServerSpam там же.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Vladorld
сообщение 3.9.2025, 21:38
Сообщение #7
Стаж: 10 лет

Сообщений: 280
Благодарностей: 93
Полезность: < 0

Никто сейчас на php в здравом уме не делает новые проекты lol.gif


Скачать КС 1.6 https://cs-servers.in.ua/download/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Gecko
сообщение 3.9.2025, 22:35
Сообщение #8
Стаж: 7 лет 4 месяца

Сообщений: 1247
Благодарностей: 518
Полезность: 346

Цитата(Vladorld @ 3.9.2025, 21:38) *
Никто сейчас на php в здравом уме не делает новые проекты lol.gif


github.com с тобой не согласен, php входит в десятку языков для написания сайтов в 2025 году, можешь глянуть любой рейтинг.

А если спросить у ИИ ассистента

Google:
Цитата
По данным различных источников за 2025 год, на PHP написано от 74% до 77% всех веб-сайтов, чья технология известна. Эта статистика подтверждает доминирование PHP в веб-разработке, благодаря простоте синтаксиса, низкому порогу входа и активному развитию языка с такими фреймворками, как Laravel.


ChatGPT:
Цитата
По состоянию на 2025 год точное количество сайтов на PHP может варьировать в зависимости от источника, но вот самые актуальные данные:
Доля сайтов на PHP (по данным W3Techs)
PHP используется на 73,6 % сайтов, где известен серверный язык программирования (данные на 27 августа 2025 года)
В мае 2025 года Wikipedia (ссылаясь на W3Techs) указывает 74,2 %
Общее число веб-сайтов
Общая численность сайтов в 2025 году оценивается в 1,5 млрд (1,500,000,000), из них около 260 млн активно поддерживаются и обновляются
Ряд источников также упоминает, что по состоянию на 2025 год более 33 миллионов текущих сайтов работают на PHP

Приблизительные расчёты

Если взять 1,5 млрд сайтов как базу:
73.6 % от 1.5 млрд ≈ 1.104 млрд сайтов.
74.2 % от 1.5 млрд ≈ 1.113 млрд сайтов.
Однако эти цифры скорее теоретические, поскольку доля в большей степени отражает процент от сайтов, у которых вообще известен язык, а не от всех в целом.
Практически подтверждённое число активных PHP-сайтов — около 33 млн — выглядит более реалистично в рамках реально используемых и обновляемых ресурсов.

Итог
По данным W3Techs, около 3 из 4 сайтов с известным серверным языком работают на PHP (≈ 73–74 %)
По оценке отрасли, общее количество реально функционирующих сайтов на PHP — 33 млн+
Если ориентироваться на весь массив доменных ресурсов (~1,5 млрд сайтов), доля PHP-сайтов составляет порядка 1,1 млрд, но это грубая статистическая оценка.

Вывод
Доля PHP-сайтов среди сайтов с известным серверным языком составляет 73–74 %.
Оценочное число реально действующих PHP-сайтов — порядка 33 миллионов.


Не важно на чём пишут сайты в 2025 году, важен сам рынок этих сайтов для хостинг-компаний.

На php работают:
Amxbans, CSBans, Psychostats, GameCMS ... HLStatsX, SourceBans. И все известные мне веб-UI для amxx-плагинов.

Отредактировал: Gecko, - 3.9.2025, 22:36


Не отвечаю на ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Gecko
сообщение 3.9.2025, 22:59
Сообщение #9
Стаж: 7 лет 4 месяца

Сообщений: 1247
Благодарностей: 518
Полезность: 346

Цитата(Vladorld @ 3.9.2025, 21:38) *
Никто сейчас на php в здравом уме не делает новые проекты lol.gif

Всё зависит от проекта, для написания небольшого сайта - тот же go будет неудобен, сразу нужно переплачивать за VPS и кучу всего настраивать, кроме того писать на go - дорого.
А на php можно быстро и очень дешево развернуть нужный проект в кротчайшие сроки.
А вообще, производительность проекта зависит не от языка на котором он написан а от квалификации разработчика.


Не отвечаю на ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Vladorld
сообщение 4.9.2025, 0:12
Сообщение #10
Стаж: 10 лет

Сообщений: 280
Благодарностей: 93
Полезность: < 0

TIOBE Index показывает насколько часто люди ищут информацию о языках программирования - php на 15 месте. По поводу быстро и дешево создать проект, то здесь тоже сомнительно. Все эти HestiaCP, ISP, Vesta и прочий шлак не просто так создавались. Развернуть сайт на PHP через консоль еще тот геморрой. Под каждый простой CRUD сайтик нужен уникальный конфиг nginx, куча зависимостей - шаг влево и сайт лег, нет нормальной асинхронности. Если взять топ 1% посещаемых сайтов, то на бэкенде чаще будет Python или Node.js.


Скачать КС 1.6 https://cs-servers.in.ua/download/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Vladorld
сообщение 4.9.2025, 1:49
Сообщение #11
Стаж: 10 лет

Сообщений: 280
Благодарностей: 93
Полезность: < 0

Amxbans, CSBans, Psychostats - это legacy можно переписать за пару вечеров на Python/Django с помощью LLM. Claude на питоне иногда творит чудеса) поэтому ценности от различных CMS на php уже не вижу.


Скачать КС 1.6 https://cs-servers.in.ua/download/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Gecko
сообщение 4.9.2025, 1:55
Сообщение #12
Стаж: 7 лет 4 месяца

Сообщений: 1247
Благодарностей: 518
Полезность: 346

Vladorld, lol.gif а как ты поднимаешь сайт на python или nodejs?
Инструкцию в студию по запуску сайта на базе nodejs ))))

Там будет геморроя ещё больше, ещё больше зависимостей (особенно с node.js) и настроек поболее чем в том же php...
И я тебе открою секрет, именно в этом случае ты будешь завязан на терминале, на все 100%

Я боюсь спросить, чем так hestiacp плоха? Может я чего-то не знаю, поделись.
Или может ты знаешь бесплатную альтернативу с открытым кодом? Которая по твоему мнению в разы лучше...

По поводу статистики, опроси ради интереса 10 своих знакомых, поинтересуйся сколько у них сайтов на php работает.
Есть открытая статистика по таким движкам которые выдают себя по name="generator" и ссылкам по типу /wp-content/...
Только один WP это более 541 миллионов сайтов (DemandSage)
https://www.demandsage.com/wordpress-statistics/

Vladorld,
Цитата
Если взять топ 1% посещаемых сайтов, то на бэкенде чаще будет Python или Node.js.

Wikipedia.org (вся на PHP)


Не отвечаю на ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Vladorld
сообщение 4.9.2025, 17:11
Сообщение #13
Стаж: 10 лет

Сообщений: 280
Благодарностей: 93
Полезность: < 0

Про nodejs не знаю, на питоне типичный конфиг nginx для любого фреймворка:
Код
location / {
    include proxy_params;
    proxy_pass http://unix:/run/gunicorn.sock;
}

location /static/ {
    root /home/site/static;
}
    
location /media/ {
    root /home/site/media;
}

Не нужно выставлять определенные права доступа на каждый файлик, как на php lol.gif В большинстве случаев даже БД не нужно поднимать, вполне хватит sqlite. Позже, поменяв пару строчек кода можно перейти на MySQL или Postgres. Для обновления SSL сертификатов есть certbot или использовать Cloudflare.

Минус HestiaCp, что там нет защиты от дурака. Мне когда-то фрилансер поднимал сайт на php, и он периодически падал. Два раза исправлял проблему, а на 3-й раз обвинил меня, что я куда-то не туда нажимаю и исчез. Позже, когда я сам начал кодить - разобрался в чем был баг. Фрилансер с кучей положительных отзывов и 10 летнем стажем, тупо конфиг для nginx прописывал в default.cfg. Панель автоматически обновлялась и перезаписывала конфиг.
Цитата
Wikipedia.org (вся на PHP)

20 лет назад альтернативы особо не было PHP. А сейчас зачем? WordPress популярен потому что много бесплатной рекламы от копирайтеров, а не потому что удобен.


Скачать КС 1.6 https://cs-servers.in.ua/download/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Gecko
сообщение 4.9.2025, 20:29
Сообщение #14
Стаж: 7 лет 4 месяца

Сообщений: 1247
Благодарностей: 518
Полезность: 346

Vladorld,
Цитата
Минус HestiaCp, что там нет защиты от дурака. Мне когда-то фрилансер поднимал сайт на php, и он периодически падал. Два раза исправлял проблему, а на 3-й раз обвинил меня, что я куда-то не туда нажимаю и исчез. Позже, когда я сам начал кодить - разобрался в чем был баг. Фрилансер с кучей положительных отзывов и 10 летнем стажем, тупо конфиг для nginx прописывал в default.cfg. Панель автоматически обновлялась и перезаписывала конфиг.

То что ты описал это не проблема ПУ а проблема администратора, любая панель если её неправильно настроить будет вести себя соответственно.
В hestiacp по умолчанию отключены обновления (там была и есть опция отключения автоматического обновления), просто не нужно было править файлы ~/conf/web/../*.conf, это нужно делать с шаблонами *.tpl. Если ты используешь в качестве веб-сервера nginx, то достаточно создать шаблон для твоего проекта в котором описать нужный конфиг:
mysite.tpl и mysite.stpl
Код
cp /usr/local/hestia/data/templates/web/nginx/php-fpm/default.tpl /usr/local/hestia/data/templates/web/nginx/php-fpm/mysite.tpl && \
cp /usr/local/hestia/data/templates/web/nginx/php-fpm/default.stpl /usr/local/hestia/data/templates/web/nginx/php-fpm/mysite.stpl


И отредактировать их как вам будет нужно. Всё. И при обновлении настроек сайта или самой ПУ ничего не будет падать.
Есть там защита от дурака - это выбор предустановленного шаблона. Или используете nginx+apache2, а ещё можно написать для вашего проекта автоустановщик, и прямо из настроек с помощью app install можно развернуть сайт со всеми нужными шаблонами.

Vladorld,
Цитата
Не нужно выставлять определенные права доступа на каждый файлик, как на php lol.gif В большинстве случаев даже БД не нужно поднимать, вполне хватит sqlite. Позже, поменяв пару строчек кода можно перейти на MySQL или Postgres.

Там немного не так всё работает, sqlite и mysql по-разному работают с данными. Переход с одной СУБД на другую это уже не просто взять и поменять пару строк в коде.

Vladorld,
Цитата
Не нужно выставлять определенные права доступа на каждый файлик, как на php

Это ни разу не проблема. Тем более если говорить о работе через терминал, все права можно выставить одной командой. А если через ПУ, то как я написал выше, можно написать автоустановщик для ПУ, он автоматически выставит нужные права.

Vladorld,
Цитата
В большинстве случаев даже БД не нужно поднимать, вполне хватит sqlite.

Ты путаешь базу данных и СУБД (систему управления базами данных)
sqlite, mysql, postgresql = СУБД. то есть, это всё системы которые работают с базами данных.

Vladorld,
Цитата
WordPress популярен потому что много бесплатной рекламы от копирайтеров, а не потому что удобен.

На этом форуме куча постов где я топлю против WP в пользу ГСС (генераторов статических сайтов), но есть моменты в которых WP не имеет конкурентов.
Мне нужно было сделать корпоративный сайт для одной хорошей знакомой, сайт нужно было сделать в короткое время, за небольшие деньги, быстро и главное функционально, чтобы его могли качественно наполнять несколько человек. С этой задачей справился только WP.
Я не изобретал велосипед, я взял готовое решение, убрал всё лишнее и добавил то, что было нужно заказчику. Гостевая сессия кэшировалась на уровне плагина, потому как сайт обитал на обычном виртуальном хостинге на beget, и открывался очень быстро, не уступая обычному статическому сайту.

Есть моменты, когда твои убеждения тают перед фактами, и нужно выбрать тот инструмент который максимально быстро и эффективно решит твои задачи в данный момент времени. По этому в корне неправильно утверждать, что одно решение (язык, технология...) априори лучше другого. Всё зависит от ситуации.



Не отвечаю на ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Metal Messiah
сообщение 5.9.2025, 11:30
Сообщение #15


Иконка группы

Стаж: 13 лет

Сообщений: 2457
Благодарностей: 1482
Полезность: 770

HostGame.cf
Цитата( Vladorld)
Никто сейчас на php в здравом уме не делает новые проекты
Ни один истинный шотландец? rofl.gif

Цитата(Vladorld)
Развернуть сайт на PHP через консоль еще тот геморрой.
Геморроя там нет. Есть неоправданные затраты времени (которые в больших количествах переводятся в работо-часы, то есть в деньги. Я легко разворачиваю любые LAMP решения на любом железе, но у меня только один VPS без панели управления, все остальные с панелями. С дефолтными либо модифицированными кфг или скриптами. На одном сервере в силу особенностей пришлось скрипт бекапов переписать чтобы они не слетали (стандартный функционал исключений не подходил).

Цитата(Vladorld)
Amxbans, CSBans, Psychostats - это legacy можно переписать за пару вечеров на Python/Django
Онанизм. Пойди перепиши винду, лет 5 глупости не будешь писать на форуме а потом придешь с результатом и всех удивишь rofl.gif

Цитата(Gecko)
а как ты поднимаешь сайт на python или nodejs?
Да хоть на Delphi. Если язык программирования умеет unix socket - приложение слушает его. Если нет (например,
Delphi под Wine в качестве бекенда
да, я знаю толк в извращениях

тогда обычный сокет, и какой-то nginx перед ним. С varnish или nginx cache если нужно.
Вопрос стоит ли возиться когда мейнстримом был и остается PHP, что бы там не пытались вбросить?

Несколько лет назад я бы спокойно заявил что PHP - универсальный язык программирования. Ты берешь свой проект, бекапишь, переносишь на любой другой сервер и там разворачиваешь. Всё.
А теперь попробуйте развернуть сайт на Python (например , easymon - движок на котором работают boostcs, vipms-boost, strikes) на Linux другой версии! Обещаю увлекательный процесс и не обязательно с результатом! Потому что полезут зависимости, потом их зависимости и так далее.

Почему я написал про несколько лет? Потому что начиная где-то с PHP 7.3 (и капитально с 8й версии) команда PHP начала искусственно создавать сложности разработчикам. Сейчас так не работает что ты тупо взял перенёс и всё запустилось. Это будет работать только если версия PHP старого и нового сервера совпадают, а при несовпадении у тебя в лучшем случае сразу вылезет какой-то глюк или ошибка из-за которой придется переписывать код (при этом думая как не нарушить совместимость с предыдущей версией) либо, что хуже, какой-то баг вылезет где-то через месяца три, и как покажет расследование - причиной бага является как раз последняя версия PHP. Бывало такое.

Цитата(Gecko)
Панель автоматически обновлялась и перезаписывала конфиг.
Выключи автообновления и делай их вручную только в случае необходимости. Бывало точно то же самое, но не из-за конфига, просто после обновления панели не встал какой-то процесс (не помню какой, возможно база данных или бекенд) в результате сайт пролежал недельку. Это было давно, еще когда я не ставил на каждый проект мониторинг доступности.



Полезные публикации - ссылки у меня в профиле. Ссылка на плагин против спама на сервере StopServerSpam там же.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Vladorld
сообщение 5.9.2025, 12:41
Сообщение #16
Стаж: 10 лет

Сообщений: 280
Благодарностей: 93
Полезность: < 0

Цитата
Ты путаешь базу данных и СУБД (систему управления базами данных)
sqlite, mysql, postgresql = СУБД. то есть, это всё системы которые работают с базами данных.

Все понятно с тобой, типичный php программист lol.gif


Отредактировал: Vladorld, - 5.9.2025, 12:44


Скачать КС 1.6 https://cs-servers.in.ua/download/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Vitaliy
сообщение 5.9.2025, 13:01
Сообщение #17


Стаж: 14 лет

Сообщений: 2431
Благодарностей: 526
Полезность: 609

Меценат Меценат

Мир пошел еще дальше, теперь можно пилить Mobile & Desktop на php)))
https://nativephp.com/
Извращениям конца не будет)

Но надо заметить что с 2010 годов до сейчас PHP не плохо так развивается, да и пакеты на packagist растут как грибы после дождя (статка с ChatGPT))
Могу точно сказать, на php почти все сделали за тебя для любого MVP (любого уровня) да и и не только MVP), когда на любом другом языке надо многое писать самому, а надо ли?) Сложная логика может жить при нужде как микросервис, все зависит от задач, а значит сказать что PHP плох - ну просто невозможно.

А хоронили его еще с 2008 года, и он у же никак 17 лет умереть не может, все новые фреймворки рождаются на PHP, и я не могу не заметить такие решения как Swoole, FranknPHP, Phalcon и другие, которые легко выводят его на уровень других топ решений под web (по к-ву запросов, памяти и тд и тп) и даже обгоняют конкурентов.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Gecko
сообщение 5.9.2025, 13:19
Сообщение #18
Стаж: 7 лет 4 месяца

Сообщений: 1247
Благодарностей: 518
Полезность: 346

Vladorld,
Цитата
В большинстве случаев даже БД не нужно поднимать, вполне хватит sqlite

А по моему, это полное с твоей стороны непонимание того, что такое БД и СУБД. SQLite это СУБД которая работает с базами данных, то есть база данных обязательна при работе с sqlite потому как в этом её смысл.

Metal Messiah
Цитата
выключи автообновления и делай их вручную только в случае необходимости. Бывало точно то же самое, но не из-за конфига, просто после обновления панели не встал какой-то процесс (не помню какой, возможно база данных или бекенд) в результате сайт пролежал недельку. Это было давно, еще когда я не ставил на каждый проект мониторинг доступности.

Ты в ответе процитировал не меня, но указав случайно мой ник ))) Я уже написал, что hcp устанавливается с выключенными обновлениями, это можно проверить по задачам в системном планировщике, именно это делает опция включения и выключения обновления в GUI.
Код
sudo /usr/local/hestia/bin/v-update-sys-hestia-all





Не отвечаю на ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Gecko
сообщение 5.9.2025, 13:33
Сообщение #19
Стаж: 7 лет 4 месяца

Сообщений: 1247
Благодарностей: 518
Полезность: 346

Vitaliy,
Цитата
Извращениям конца не будет)

Ну это как в докере запускать qemu


Не отвечаю на ЛС.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Vladorld
сообщение 5.9.2025, 13:57
Сообщение #20
Стаж: 10 лет

Сообщений: 280
Благодарностей: 93
Полезность: < 0

Цитата
А по моему, это полное с твоей стороны непонимание того, что такое БД и СУБД. SQLite это СУБД которая работает с базами данных, то есть база данных обязательна при работе с sqlite потому как в этом её смысл.

Ты неверно понимаешь контекст. Я не имел ввиду, что sqlite - не СУБД , при этом ChatGPT понял все правильно.


Скачать КС 1.6 https://cs-servers.in.ua/download/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
2 страниц V   1 2
 
Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: