в общем такое предложил он, чтобы не плодить копии -
<?php$allowedReferer = 'https://domain.com/'; // Замените на адрес вашего сайта$referer = $_SERVER['HTTP_REFERER'] ?? '';if (strpos($referer, $allowedReferer) !== 0) { // Если реферер не ваш сайт, выводим ошибку и прекращаем выполнение скрипта header('HTTP/1.0 403 Forbidden'); exit('Direct access not allowed.');}// Путь к директории для сохранения временных файлов (относительный путь)$tempDir = 'videostmp/';// Путь к оригинальному файлу (относительный путь)$originalFilePath = 'videos/' . $_GET['file'];// Абсолютный путь к директории временных файлов$tempDirAbsPath = __DIR__ . '/' . $tempDir;// Создание директории для временных файлов, если она не существуетif (!is_dir($tempDirAbsPath)) { mkdir($tempDirAbsPath, 0755, true);}// Получение расширения оригинального файла$originalExtension = pathinfo($originalFilePath, PATHINFO_EXTENSION);// Генерация уникального имени файла с расширением$tempFileName = uniqid() . '.' . $originalExtension;$tempFilePath = $tempDirAbsPath . $tempFileName;// Проверяем наличие временного файлаif (file_exists($tempFilePath)) { // Обновляем время последнего доступа к файлу touch($tempFilePath); // Выводим прямую ссылку на временный файл $tempFileLink = $tempDir . $tempFileName; echo 'Download link: <a download href="' . $tempFileLink . '">Download</a>';} else { // Копируем оригинальный файл во временную директорию if (copy($originalFilePath, $tempFilePath)) { // Установка прав доступа для временного файла chmod($tempFilePath, 0644); // Обновляем время последнего доступа к файлу touch($tempFilePath); // Выводим прямую ссылку на временный файл $tempFileLink = $tempDir . $tempFileName; echo 'Download link: <a download href="' . $tempFileLink . '">Download</a>'; } else { // Обработка ошибки создания временного файла echo 'Error creating temporary file.'; }}?>
Функции очистки старых файлов ещё нет.
Спорный момент, я бы лучше md5 делал из названия файла, чтобы в случаи одинаковых файлов, не плодились дубли.
Есть) Просто я не стал ее указывать, машина предложила такое -
<?php // Путь к директории с временными файлами $tempDir = 'путь/к/директории/для/сохранения/временных/файлов/'; // Время в секундах, через которое временные файлы будут удалены (например, 1 час - 3600 секунд) $expiryTime = 3600; // Получение текущего времени $currentTimestamp = time(); // Проверка всех файлов в директории $files = glob($tempDir . '*'); foreach ($files as $file) { // Получение времени создания файла $fileCreationTime = filectime($file); // Проверка, если файл создан раньше, чем указанное время удаления if ($currentTimestamp - $fileCreationTime >= $expiryTime) { // Удаление файла unlink($file); } }
Ну и крон чтобы выполнять это все -
0 * * * * php /путь/к/delete_temp_files.php
<?php// Путь к директории для сохранения временных файлов (относительный путь)$tempDir = 'videotmp/';// Путь к оригинальному файлу (относительный путь)$originalFilePath = 'video/' . $_GET['file'];// Абсолютный путь к директории временных файлов$tempDirAbsPath = __DIR__ . '/' . $tempDir;// Получение расширения оригинального файла$originalExtension = pathinfo($originalFilePath, PATHINFO_EXTENSION);// Генерация уникального имени файла с расширением$tempFileName = uniqid() . '.' . $originalExtension;$tempFilePath = $tempDirAbsPath . $tempFileName;// Создание временного файлаif (copy($originalFilePath, $tempFilePath)) { // Установка прав доступа для временного файла chmod($tempFilePath, 0644); // Вывод прямой ссылки на временный файл $tempFileLink = $tempDir . $tempFileName; echo 'Ссылка для скачивания: <a href="' . $tempFileLink . '">Скачать</a>';} else { // Обработка ошибки создания временного файла echo 'Ошибка создания временного файла.';}?>
https://start.bizon365.ru/room/83022/f89113f5dab9
Есть, конечно, кто добивался, но с уходом Адсенса все его курсы про сайты превратились в тыкву. Был бы мега спец, а не инфоцыган, то запилил бы курс по бурж сайтам. А так - чтобы жить на том же уровне, решил поинфоцыганить на крипте. А это уже, по большей части, лохотрон.
лол, интернет рынок в ру сегменте вырос значительно в прошлом году, в стране крутятся триллионы рублей, смешно слышать что тут ловить нечего
Роман будет, в отличие от своих учеников). Вы адепт, что вижу, Пузата? Вы забываете только реф-ссылку добавить. Или сначала аудиторию прогреваете?
Которые оплачивают ему глупцы, верящие в кнопку "бабло", обещанную Романом, после прохождения его курсов.
Роман зарабатывает на самой древней профессии. Имею в виду религию.