Как предотвратить использование урлов за пределами mysite

Я создаю небольшой сайт для загрузки бесплатных игр. Я загрузил игры в мою базу данных через файловое поле. У меня есть такая ссылка: domain.com/media/games/game_name.exe

Вопрос заключается в следующем:

1 - Как мне предотвратить копирование этой ссылки с моего сайта и использование ее на других сайтах.

2 - Как перенаправить ссылку на мой сайт, если она используется на другом сайте.

вот мои модели:

class games(models.Model): 
class Meta :
    verbose_name_plural = 'games'
game_title = models.CharField(max_length=50)
game_requirements = models.CharField(max_length=100)
game_picture = models.ImageField(upload_to='images')
game_desc = models.TextField()
game_size = models.CharField(max_length=20)
game_upload = models.fileField(upload_to='games')


def __str__(self):
    return self.game_title

вот мой media_config:

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

вот мой download_template_url:

{% for game in all_games %} 

   <a href="{{game.game_upload}}">download<i class="fa fa-download"></i></a>

{% endfor %} 

вот мои взгляды:

def download(requset,game_title):
all_games = games.objects.filter(game_title=game_title)

context ={
   'all_games' :all_games,
 }
return render( requset,'download.html',context)

Заранее спасибо.

1 - Как предотвратить копирование этой ссылки с моего сайта и использование ее на других сайтах.

1
  • Вы не можете предотвратить копирование url.

2 - Как перенаправить ссылку на мой сайт, если она используется на другом сайте.

  • Это буквально то, чем является ссылка...

Я думаю, что вы запутались в ряде вещей. Похоже, что на самом деле вам нужно установить базовую аутентификацию пользователей на вашем сайте, с целью, чтобы только люди, которые вошли в систему, могли получить доступ к страницам/файлам, которыми вы хотите поделиться. Документация Django по аутентификации довольно хороша: https://docs.djangoproject.com/en/4.0/topics/auth/

Вернуться на верх