Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (1)

Наибольший вклад в теги

Все теги (16)

Лучшие ответы пользователя

Все ответы (21)
  • Каждому пользователю файл по уникальной ссылке[NGINX, PHP]

    mpriver
    @mpriver
    Используйте заголовок X-Accel-Redirect.

    Для этого location, в котором фактически располагаются файлы, помечаете как internal:
    location /videofiles {
        root /var/www;
        internal;
    }
    

    Такой location будет доступен для пользователя только в случае внутренних редиректов nginx и при использование заголовка X-Accel-Redirect.

    Для проверки есть ли у пользователя доступ к файлу используйте следующий скрипт:
    <?php
        // Здесь проверяете, есть ли у пользователя доступ
        header("X-Accel-Redirect: /videofiles/" . $path);
    ?>
    

    В этом случае будут доступны все возможности предоставляемые при прямом скачивании статического контента с сервера nginx (например, докачка).
    Ответ написан
    Комментировать
  • Регулярное выражение

    mpriver
    @mpriver
    Например, так: ([^\[]+)\[([^\]]+)\](.+)

    Подробнее:
    1. ([^\[]+) — любой символ кроме "["
    2. \[ — собственно "["
    3. ([^\]]+) — любой символ кроме "]"
    4. \] — закрывающая скобка
    5. (.+) — все остальное


    Круглые скобки нужны для группировки, т.е. на выходе вы получите 3 группы, в каждой будет «слово».
    Ответ написан
    2 комментария
  • Расшарить видео окна проги по сети?

    mpriver
    @mpriver
    В TeamViewer'е можно, качество там получше чем в Skype.
    Ответ написан
    4 комментария
  • Django: post-запрос и проблема с CSRF

    mpriver
    @mpriver
    Должно без всяких ухищрений работать. Если используете стандартный шаблон приложения, от вас требуется только вставить {% csrf_token %} внутрь формы.

    Сам механизм в простом случае (без Ajax'а) работает так:
    1. Django устанавливает cookie csrftoken=CSRF-токен
    2. Вместо template_tag'а {% csrf_token %} Django вставляет:
    <input type="hidden" name="csrfmiddlewaretoken" value="CSRF-токен">
    

    3. При сабмите формы, cookie и CSRF-токен уходит обратно к Django вместе с остальными полями формы.
    4. Django сверяет токен из cookie и из POST.
    Ответ написан
    Комментировать
  • Оповещение о просроченных задачах в Redmine

    mpriver
    @mpriver
    RAILS_ENV="production" rake redmine:send_reminders days=7 users="1,2,44"
    

    Отправит оповещения о задачах, срок которых истекает через 7 дней или раньше (в т.ч. просроченные).

    Параметры:
    • days: количество дней до завершения (по умолчанию 7)
    • tracker: id трэкера (по умолчанию все)
    • project: id проекта (по умолчанию все)
    • users: список id пользователей которым необходимо прислать уведомления
    Ответ написан
    Комментировать