Задать вопрос
  • Почему оператор Yota блокирует скачивание torrent при раздаче с телефона?

    @apppostol
    Почему блокирует? Это надо у yota спрашивать, а не здесь.
    Почему у вас не работает не смотря на измененный ttl? Потому что торрент протокол детектируется отдельно, и ttl тут не причём.
    Ответ написан
    1 комментарий
  • Как организовать доступ к рабочему компьютеру удалённо?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Идёте к своему руководителю, объясняете ему проблему и, если он согласен, что вам необходим удалённый доступ, то уже он ставит задачу вашим админам организовать всё необходимое.
    Если руководитель считает, что доступ вам не нужен, то и нарываться на неприятности нет смысла.
    Ответ написан
    Комментировать
  • Какой программный роутер использовать?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    OPNSense — на фряхе, как и pfSense, но с открытым исходным кодом и несколько более дружелюбным интерфейсом. Я щупал оба — в OPNSense GUI удобнее. На хост ставите ваш любимый proxmox, а OPNSense, как и дополнительные сервисы в виртуалки. Для сети втыкаете нужное количество сетевых карт. Или можно поставить OPNSense хостом, а уже в нём docker/bhyve/что-угодно и там играть с виртуализацией. Включаете репозиторий FreeBSD и ставите всё что угодно оттуда (по-умолчанию выключен и используется свой). Ну или не использовать виртуализацию и оставить железку только под роль роутера.
    Ответ написан
    2 комментария
  • Почему обрывается связь с интернетом на репитере?

    @Dieman666
    мало вводных данных.
    какие модели роутеров? как подключены? (по файфай или по кабелю между собой)
    надеюсь хоть wifi система используется фирменная кинетика для подключения второго роутера?)
    прошивка роутера и репитера обновлены до последней версии?
    если по вайфай подключение, значит нужно знать картину занятости каналов файфай на 2.4 и 5 ггц.
    юзать прогу wifi analyzer на телефоне.
    а также скрин подключения репитера из основного роутера в wifi системе
    Ответ написан
    Комментировать
  • Как увеличить размер диска в proxmox?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Раздел со свопом удалите и никогда так больше в 21 веке не делайте. Тогда получится скукожить все разделы в один.
    Ответ написан
    Комментировать
  • Как выбирается маршрут в сети?

    @Akina
    Сетевой и системный админ, SQL-программист.
    Алгоритм простой. Сначала из всех имеющихся маршрутов, подсеть которых включает узел назначения, выбирается самый "узкий". Если таковых несколько, выбирается тот, у которого минимальна метрика. Именно в шлюз этого маршрута и отправляется пакет.
    Тип интерфейса при этом не имеет вовсе никакого значения.
    Ответ написан
    2 комментария
  • Почему падают интерфейсы на микротик после бекапов proxmox?

    b1ora
    @b1ora Куратор тега MikroTik
    Контакты в профиле
    Потому что свитч чип на rb3011 не рассчитан на такую нагрузку. Подключай через коммутатор.
    Маршрутизатор должнен маршрутизировать
    Коммутатор коммутировать
    Ответ написан
    Комментировать
  • Подключние к базе данных из класса - насколько правильно?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    С ответами выше полностью согласен, DI через конструктор, авто-резолв зависимостей, возможно даже сервис контейнер с биндингами - это правильно, явное лучше не явного и тд.

    Но я предлагаю не мучаться, а просто сделать singleton-обертку над PDO
    И вызывать её там где нужно нафигачить запросы к БД

    class DB
    <?php
    class DB
    {
        private static $instance = null;
        private $pdo;
    
        private function __construct()
        {
            $host = 'localhost';
            $dbname = 'your_database';
            $username = 'your_username';
            $password = 'your_password';
            $charset = 'utf8mb4';
    
            $dsn = "mysql:host=$host;dbname=$dbname;charset=$charset";
            $options = [
                PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
                PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
            ];
    
            $this->pdo = new PDO($dsn, $username, $password, $options);
        }
    
        public static function getInstance()
        {
            if (self::$instance === null) {
                self::$instance = new self();
            }
            return self::$instance->pdo;
        }
    
        private function __clone() {}
        private function __wakeup() {}
    }


    class Data 
    {
        public function __construct($param1, $param2)
        {
             // Получаем PDO напрямую
            $this->db = DB::getInstance();
        }
    
        public function example()
        {
            // $query = $this->db->query("SELECT * FROM table");
            // $query->execute();
    
            // $stmt = $this->db->prepare("...");
        }
    }


    Вариант пробросить PDO через конструктор всё ещё останется, если поймете что оно вам нужно
    А так просто получаем глобальный доступ к инстансу PDO из любого места в коде
    Ответ написан
  • Полноценная Убунта поверх WSL?

    forajump
    @forajump
    Бессистемный дезинтегратор
    Нет, не полноценная. В WSL недоступно ядро (или по крайней мере не все его интерфейсы), исходно нет доступа к аппаратному обеспечению (USB, беспроводные сети; хотя поддержку USB с бубном прикрутить можно, Wi-Fi не пробовал), доступ к графическому процессору осуществляется отлично от Linux, как следствие не будут работать большинство графических настольных приложений, некоторое серверное ПО, в целом совместимость с ПО для Linux далеко не полная. Нет нативной поддержки systemd (можно включить).
    Это не Linux, а лишь среда запуска файловой системы Linux и командной оболочки (bash), сам разработчик заявляет ее именно так. Хороший инструмент для обучения и экспериментов, среда для системного администратора.
    Также по небольшому опыту эксплуатации довольно часты проблемы взаимодействия с Windows: при установке, запуске, удалении случаются ошибки и прочие нестыковки, например:
    • сообщения о неизвестных ключах в файле .wslconfig, когда ядро уже обновилось автоматически вместе с Windows, а дистрибутив еще старый;
    • Wsl/Service/CreateInstance/E_FAIL;
    • CreateProcessParseCommon:: Failed to translate C:\path\folder.


    В виртуальной машине такого не случается, и совместимость гораздо лучше, но WSL быстрее разворачивается и проще управляется.
    Ответ написан
    2 комментария
  • Подключние к базе данных из класса - насколько правильно?

    ipatiev
    @ipatiev Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    меня есть подключение к базе данных

    и уже неправильное

    Учим основы:
    - на локальном сервере это вот try catch echo является бессмысленным: если убрать всю эту нелепую копипасту, РНР и сам выведет то же самое.
    - на боевом сервере этот код является вредным: внутренние ошибки РНР мы никогда не светим наружу. Пользователь их не поймёт, а для хакера они бесценны.
    Поэтому убираем бессмысленное try catch и оставляем только соединение
    $sql_connect = new PDO("mysql:host=". DB_HOST .";dbname=". DB_NAME. ";charset=utf8mb4", DB_USER, DB_PASS, $pdo_options);

    Опять же убрав из него нелепые кавычечьки.

    насколько правильный такой подход

    Этот подход практически идеальный

    Можно изменить подход так, что бы не использовать конструктор

    Можно, но не нужно.
    Сейчас всё чётко видно, откуда берётся соединение с БД, и где оно нужно. Одна переменная в конструкторе - это не то место, где надо лениться и изобретать способы её не писать. В будущем, когда освоите автоматический вызов классов - тогда оно будет подставляться само. Но всё равно через конструктор.
    Ответ написан
  • Почему не запускается session_start() на сервере от REG.RU?

    @AUser0
    Чем больше знаю, тем лучше понимаю, как мало знаю.
    Настраивайте в PHP логирование всех ошибок (даже незначительных) в лог-файлы, а потом смотрите сами лог-файлы, исправляйте причины ошибок.
    И причину отсутствия session_start() там-же увидите, однозначно!
    Ответ написан
    Комментировать