• Какой сервер лучше выбрать?

    @Drno
    Ну либо распределить всё по VPS разным недорогим, например на Aeza или makecloud
    Либо взять дедик и туда запихнуть
    ПОчта - mailcow или roundCube
    Облако - nextcloud

    Ну либо домой собирать сервак, но это минимум года 2 окупаемости обычно
    Ответ написан
    Комментировать
  • Какой сервер лучше выбрать?

    Sanes
    @Sanes
    1. Игровые веб-интерфейсы (обмен по веб-сокетам) с нагрузкой 5-7 раз в месяц от 20 до 1000 одновременных пользователей.
    2. Хостинг для виджета "Конфигуратор" с ежемесячным посещением в 10к человек.

    Как долго готовы терпеть падение Вашего сервера на балконе, все эти люди?
    Ответ написан
    2 комментария
  • Какой сервер лучше выбрать?

    @rPman
    Дома можно собирать любое железо, все эти SLA для домашнего хостинга не применимы, а вот стоимость будет ниже.

    Есть неплохой вариант, сделать несколько машин на базе дешевых mitx+ssd со слабым процессором. Например энергии intel J серии процессоры едят мало а возможности высокие (кроме ограничения объема памяти в 16гб у новых и 8 старых моделей), благодаря маленьким ценам и размерам, из них можно собрать практически бесшумный ящик для нескольких сервисов без виртуализации... но корпус, основная беда, если руки куда надо прикручены, лучше сделать все самому, иначе можно за это заплатить трехкратную стоимость от начинки.
    Ответ написан
    Комментировать
  • Какой сервер лучше выбрать?

    anthtml
    @anthtml
    Системный администратор программист радиолюбитель
    1. Пару самописных сайтов с общей нагрузкой в 3000-5000 в месяц (сейчас размещены на хостинге reg.ru на одном из дешевых тарифов, около 3.5к в год) Однозначно облако упадет - будете долго поднимать, да и аптайм надежнее
    2. 5-7 почт на домене, одна размещена в Яндексе 360, остальные в ВК WorkSpace (за них ничего не плачу). Однозначно облако крайне трудно обучить спамлисты пропускать почту от частных IP
    3. Несколько облаков - Google, Yandex, iCloud (по расходам около 10к в год, из них 7,2к - это iCloud на 2TB) Можно и к себе забрать на nextcloud, но реверс прокси должен быть в облаке, чтобы проще было построить маршруты
    4. Умный дом с 25+ устройств (старый ноутбук с Ubuntu и HA под столом) локально из-за пинга
    5. Plex сервер (тоже на старом ноутбуке). локально из-за пинга и трафика
    6. Сервер для файлов с жестких дисков (пока у меня их 5 на рабочем столе и я постоянно подключаю нужный) локально из-за пинга и трафика
    1. Игровые веб-интерфейсы (обмен по веб-сокетам) с нагрузкой 5-7 раз в месяц от 20 до 1000 одновременных пользователей. облако это прод и 1000 нормальный
    2. Хостинг для виджета "Конфигуратор" с ежемесячным посещением в 10к человек. облако тоже нормальный прод

    Вывод:
    OnPermise выгодно хранить тяжелые файлы и локальные сервера для низкого пинга, если старый ноут "уже не торт", то можно рассмотреть какой m-atx/itx самосбор для его замены, либо аналоги intel nuc
    OnCloud для доступа из вне проще и надежнее и по аптайпу и по настройкам
    Ответ написан
    3 комментария
  • Какой сервер лучше выбрать?

    CityCat4
    @CityCat4 Куратор тега Сетевое администрирование
    //COPY01 EXEC PGM=IEBGENER
    Все перечисленное можно было бы держать на домашнем сервере (если он будет именно сервер, а не "нечто-дишманское-из-десктопа" или "крутая китайская тачка с али на ксеоне" - с серверной матерью, ECC памятью, ксеонами, IPMI и пр.)

    НО есть одно НО, которое вполне возможно вынудит Вас ставить это все хозяйство в ДЦ или арендовать дедик. Имя этому НО - вот эта фраза:
    Интернет стабильный 500-600мб, а оплачиваю за 1000мб.

    Вот в ней Вы ошибаетесь и ошибаетесь люто. Нет у Вас 500-600. У Вас до 1000. В любом диапазоне.

    То есть 1Мб - это тоже не нарушение договора - с физиками SLA не составляют и физикам flat rate не дают (а если дают - дерут как с юрика). Как только Вы начнете топить соседей своим исходящим трафиком (а в стандартной модели сохо входящий намнооооого больше исходящего) - Вас сразу спросят - Вы тут хоум офис открыли? Хорошо, но тогда давайте платите, как юрик.

    К себе однозначно стоит забрать почту - если хотите конечно поипаца с доменом, почтовиком, SPF, DKIM и прочими умными и не очень вещами. А так - смотрите ответ AntHTML - он все правильно написал.
    Ответ написан
    2 комментария
  • Как исправить ошибку JSON Parse Error: Expecting 'STRING' из результат json?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    В JSON ключи и строковые значения должны быть в двойных кавычках.
    Ответ написан
    7 комментариев
  • Лучше самописный интернет-магазин или на конструкторе?

    Anastasia2306
    @Anastasia2306
    PHP-разработчик.
    Если вы будете нанимать разработчиков и скажете им что вам нужен интернет магазин с нуля, то ориентируйтесь на минимум в 4-5 миллионов рублей и сроки в 6-12 месяцев.

    Если делать на готовой CMS - то ориентируйтесь на 50-100 на разработку шаблона, какого-то доп функционала.

    Если делать на готовой CMS но самому - то 0 рублей.

    Если использовать облачный SaaS конструктор - то от 1.5 до 3 т.р. в месяц.
    Ответ написан
    Комментировать
  • Как ограничить доступ к странице сайта на устройстве пк браузеров?

    Anastasia2306
    @Anastasia2306
    PHP-разработчик.
    Один из способов определения мобильного устройства является глобальный массив $_SERVER. Нас интересует $_SERVER[‘HTTP_USER_AGENT’]:

    function check_mobile_device() { 
    	$mobile_agent_array = array('ipad', 'iphone', 'android', 'pocket', 'palm', 'windows ce', 'windowsce', 'cellphone', 'opera mobi', 'ipod', 'small', 'sharp', 'sonyericsson', 'symbian', 'opera mini', 'nokia', 'htc_', 'samsung', 'motorola', 'smartphone', 'blackberry', 'playstation portable', 'tablet browser');
    	$agent = strtolower($_SERVER['HTTP_USER_AGENT']);
    	foreach ($mobile_agent_array as $value) {
    		if (strpos($agent, $value) !== false) return true;
    	}
    	return false;
    }


    Используем так:

    if (check_mobile_device()) {...}
    Ответ написан
    2 комментария
  • Как установить Laravel на обычный хостинг-сервер?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Но теперь решил, что пора двигаться дальше и нужно установить его на свой хостинг. Вот только как это сделать? Там нужен композер или еще что-то?

    Не нужен. Композер - это менеджер пакетов, который разгружает файлы в папку "vendor", а так же обновляет их там и т.д. Нет никакой проблемы закачать их "руками", в конечном виде, на хостинг.

    Максимум, что может понадобиться - это наличие сервера Apache (коий есть примерно у 95% хостеров), что бы переопределить корневую директорию проекта.

    Весь мануал будет удивительно краток:
    1. Загружаете все файлы на хост ("как есть")
    2. Создаёте в корешке хоста файл .htaccess вот с таким содержимым:
    <IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteRule ^(.*)$ public/$1 [L]
    </IfModule>

    3. Готово

    Там нужен композер или еще что-то? Ну и все эти приблуды с локального сервера. Буду благодарен за предоставление мануала. Спасибо :)

    "Композер и что-то ещё" могут быть нужны при наличии некоторых механизмов "деплоя" (англ. "deploy"), но это уже не хостинг, а как минимум VPS, и желательно там иметь Git и другие механизмы и т.д... Когда Вам это очень понадобиться - вопросы подобные тому, что Вы озвучили выше - отпадут сами собой :)
    Ответ написан
    7 комментариев
  • Почему не обрабатывается первое нажатие на чекбокс?

    MrDecoy
    @MrDecoy Куратор тега JavaScript
    Верставший фронтендер
    Так а зачем Вы дважды назначаете обработчик события?

    Вы какой код написали, так он и работает. При первом change вы добавляете обработчик change, который уже в свою очередь работает с консолью.

    $(document).ready(function() {
        
      let checkbox = "";
    
      function checkbox_add() {
            var isChecked1 = $("#foundation").prop("checked");
            var isChecked2 = $("#drop").prop("checked");
            
            if (isChecked1 && isChecked2) {
              checkbox = "Выбрано два чекбокса";
            } else if (isChecked1) {
              checkbox = "Выбран 1 чекбокс";
            } else if (isChecked2) {
              checkbox = "Выбран 2 чекбокс";
            } else {
              checkbox = "Ничего не выбрано";
            }
    
            console.log(checkbox);
      }
    
      $("#foundation, #drop").on('change', checkbox_add);
    });
    Ответ написан
    2 комментария
  • Как обновить страницу у пользователя при выполнении условия?

    Newto
    @Newto
    Правильная реализация сказана выше Алексеем -- это нужно делать через сокеты.
    Более простая, но нежелательная реализация -- через аякс. Выглядит это примерно так: 1) администратор клацает галочку -> ставится запись в БД (admin_klazz = 1). На стороне пользователей стоит скрипт, который раз в, скажем, 10 секунд проверяет статус этой самой admin_klazz. Если admin_klazz изменяется с 0 на 1, то перезагружается страница. Но если это реляционная база типа MySQL то дергать ее каждые 10 секунд еще и многими пользователями -- очень плохая идея. Однако если у вас стоит, скажем, Redis, и вы будете записывать этот флаг admin_klazz в него, то это сильно минимизирует затраты серверных мощностей.

    Но, как я и сказал выше, правльно -- через сокеты. Остальное -- костыли.
    Ответ написан
    Комментировать
  • Как обновить страницу у пользователя при выполнении условия?

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

    opium
    @opium
    Просто люблю качественно работать
    Сделать миграцию сайта на новый домен в Яндексе, а после этого сделать редирект 301 на новый для Гугла
    Ответ написан
    Комментировать
  • Как эффективно учить 2 языка программирования?

    @antonowano
    Профессиональный самоучка
    Для начала осознайте разницу между Javascript и PHP, а потом приступайте к изучению.
    Вот интересный ресурс по JavaScript.
    По PHP тоже много ресурсов, Google вам в помощь.

    Главное запомните:

    Есть два компьютера:
    Сервер - на котором хранится сайт и все его данные,
    Клиент - компьютер посетителя.
    PHP работает с компьютером-сервером, JavaScript с компьютером посетителя.

    а именно:
    PHP - работает с данными на сервере, генерирует ответ на запрос клиента;
    JavaScript - работает с элементами на странице, добавляя анимацию и события (клик, скрол и т.д.) на разные элементы.
    Ответ написан
    1 комментарий
  • Размещение текста по центру экрана

    kyrie
    @kyrie
    В общем случае решения нет, зато есть куча частностей.

    Если текст в одну строку и есть возможность использовать абсолют (что далеко не всегда)то —
    position:absolute;
    width:100%;
    top:50%;
    text-align:center;

    Если известна высота блока и можно использовать абсолют, то вариант предложенный выше.

    Если нельзя использовать абсолют, но известна высота блока и текст в одну стоку — то через line-height равный высоте блока.

    Ну и 100% кроссбраузерная классика о которой вечно все забывают — зафигачить таблицей с одной ячейкой.
    Ответ написан
    1 комментарий