chaturanga

Рейтинг
122
Регистрация
22.08.2012
да, вроде по состоянию на 2-е апреля есть бесплатный тариф
https://biz.mail.ru/docs/saas/TariffsPayment/tariffs/index.html
но реклама в письмах... уж лучше буду платить зохо...
lutskboy #:

немного уточню. мне нужно запускать программу  именно с сайта  http://site.ru/script.php и файла  script.php . а не с консоли bash sh ...

Просто удлинили проблему на 1 шаг
1)  вызвали скрипт с токеном сгенерированным по своему алгоритму (в примере делаем примитивные одноминутный токен - умножаем текущий час 9 на минуту 21)

curl http://site.ru/script.php?token=189

2) В скрипте вызываем программу и передаём токен

if (isset($_GET['token'])) {
  $token = escapeshellarg($_GET['token']);
  shell_exec("/path/to/your_program $token");
}

3) Вычисляем токен и выполняем / не выполняем код

int main(int argc, char *argv[]) {
    //    без аргументов завершаем с ошибкой
    if (argc != 2) {
      return 1;
    }
    //    получаем время
    time_t now = time(NULL);
    struct tm *tm_struct = localtime(&now);
    int hour = tm_struct->tm_hour;
    int minute = tm_struct->tm_min;

    // Вычисляем токен и проверяем его
    if (hour * minute == atoi(argv[1]) {
        // выполняем свой код
    } else return 2; //    с неверным токеном завершаем с ошибкой

    return 0;
}
lutskboy #:

каким скриптом. там код открытый. таким образом можно программу запустить и з 2.php просто добавив сверху етот алгоритм

если у вас подразумевается открытость алгоритма кодирования злоумышленнику, то никакой защиты от него вы не придумаете

lutskboy #:

ето же не значит что я  myprogram запустил с  script.php

может в терминале . а может и з другого скрипта . 1.php

ключом может быть некий хеш, создаваемый скриптом, а-ля md5(pid) - алгоритм придумайте любой
его же и сверяйте в программе


lutskboy :

как мне в myprogram определить что его запустил именно  script.php а не кто то другой.

В скрипте передайте ключ в качестве аргумента

exec('/path/to/your_program --from-script script1.php');

в программе проверьте соответсвие аргумента  --from-script его значению

bums #:
На biz.mail.ru пара доменов на бесплатных тарифах работают без проблем, доступ и через вебинтерфейс и POP3

У них же вроде больше нет бесплатных тарифов для новорегов.

max256 #:

ну так все равно же работает в убунту 22.04, а dist-upgrade и full-upgrade равнозначны.

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

dist-upgrade вводил в заблуждение своим названием и его в версии 1.0 заменили на full-upgrade, но прежнее название оставили в качестве псевдонима для обратной совместимости.

По итогу неразбериха стала ещё большая, так как на форумах пошли пространные размышления о том, что это разные команды. Разные хелпы для apt и apt-get также не добавляют определенности:

$ apt-get --help | grep -F -- '-upgrade'
  dist-upgrade - Distribution upgrade, see apt-get(8)
$ apt --help | grep -F -- '-upgrade'
  full-upgrade - upgrade the system by removing/installing/upgrading packages

Но если посмотреть исходники

$ grep -F -- "-upgrade" ./apt-2.6.1/cmdline/apt.cc
      {"full-upgrade", &DoDistUpgrade, _("upgrade the system by removing/installing/upgrading packages")},
      {"dist-upgrade", &DoDistUpgrade, nullptr},
$ grep -F "dist-upgrade" -A 1 ./apt-2.6.1/cmdline/apt-get.cc
      dist-upgrade - Powerful upgrader designed to handle the issues with
                    a new distribution.
--
      {"dist-upgrade", &DoDistUpgrade, _("Distribution upgrade, see apt-get(8)")},
      {"full-upgrade", &DoDistUpgrade, nullptr},

то видно, что команды просто псевдонимы друг друга. 
Всё как обычно - хотели как лучше...

Dmitriy_2014 #:

ни в заметках, ни в статьях никто не рекомендует делать dist-upgrade 

Может потому, что ещё в 2014-м dist-upgrade заменили на full-upgrade :)

Охлаждение фермы на пельтье :)
TP, вероятно, заработать на ней собирался, а не разориться.
Виктор Горняков #:

2. Протокол  https или http не играют роли,  в т.ч. www и отсутствие. Не слушай индивидуумов некоторых.

Для тех, кто живёт в мире со стандартом  ISO-7498 роль существенная. SSL-хендшейк происходит на  сеансовом уровне OSI, а http-соединение на уровне приложений, поэтому теоретически невозможно блокировать одну страницу в рамках https-соединения. Исключение может быть только в случае если сам блокировщик и является удостоверяющим центром выдавшим сертификат.

Ali93, РКН отправляет запрос на хостинг (если он находится в пределах рф) и по контактным данным найденным на сайте или в whois о включении записи в реестр. Ждёт 3 дня (сужу по личному опыту, хотя сейчас в требованиях реагировать в течении суток),  потом рассылает реестр провайдерам.  Если на его запрос был отправлен ответ, то присылает письмо, о том, что информация об удалении страницы будет проверена. После проверки присылает письмо об исключении из реестра. Однажды я ошибочно удалил не ту страницу - дополнительно прислал уведомление о том, что информация по прежнему не удалена. Блокировка без уведомлений возможна, только если на сайте нет контактной почты и хостер не в рф.
Вот в Беларуси всё проще - там белгиэ вносит в список блокировок без всяких уведомлений/ожиданий.

Всего: 356