AWS Заголовок Cross-Origin-Opener-Policy был проигнорирован, поскольку происхождение URL было недостоверным
Я запустил приложение django на экземпляре EC2 и добавил свои статические файлы (css, js и т.д.) в ведро S3. После многих часов работы вчера вечером мне удалось добиться загрузки статических файлов на страницы при просмотре публичного адреса EC2.
Но теперь я продолжаю получать эту ошибку: Я продолжаю получать эту ошибку при просмотре веб-страницы "Заголовок Cross-Origin-Opener-Policy был проигнорирован, потому что происхождение URL было недостоверным. Оно было определено либо в конечном ответе, либо в перенаправлении. Пожалуйста, передайте ответ, используя протокол HTTPS. Вы также можете использовать вместо этого происхождение 'localhost'"
И ни одно из моих статических изображений не загружается. Я не могу найти ничего в Интернете, связанного именно с этим сообщением об ошибке, есть несколько вариантов, которые ведут в тупик. кто-нибудь знает, что происходит?
Что странно, если я запускаю свое приложение django на своем персональном компьютере, то ошибка не появляется при проверке, но статические изображения также не загружаются.
Когда я запускаю приложение django на экземпляре ec2, то получаю сообщение об ошибке, а статические изображения по-прежнему не загружаются. Поэтому я не думаю, что ошибка влияет на загрузку статических изображений, т.е. это две отдельные проблемы.
Но прошлой ночью все это работало, так что я не знаю, что случилось.
Файл Settings.py:
ENV файл
SECRET_KEY = 'random numbers'
AWS_ACCESS_KEY_ID = 'random numbers'
AWS_SECRET_ACCESS_KEY = 'random numbers'
AWS_STORAGE_BUCKET_NAME = 'system-x-test'
AWS_S3_CUSTOM_DOMAIN = '%s.s3.amazonaws.com' % AWS_STORAGE_BUCKET_NAME
AWS_S3_OBJECT_PARAMETERS = {'CacheControl': 'max-age=86400',}
AWS_LOCATION = 'static'
STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
Одна из самых серьезных ошибок, с которыми я когда-либо сталкивался.
Я решил ее, добавив следующий параметр в ваш setting.py
.
SECURE_CROSS_ORIGIN_OPENER_POLICY=None
https://django.readthedocs.io/en/stable/ref/settings.html#std-setting-SECURE_CROSS_ORIGIN_OPENER_POLICY
Почему я это сделал? Потому что настройка по умолчанию того же происхождения постоянно выдавала эту ошибку. Но я знаю, что это проблема безопасности, и, возможно, кто-то, кто занимался безопасностью системы, сможет дать дальнейший совет.
Тогда, если вы еще не разобрались со своими проблемами, как это сделал я, у вас, вероятно, будут проблемы с подключением к БД, т.е. ошибок не возникает, но приложение почему-то не подключается. Читая документацию, django рекомендует обратить
SESSION_COOKIE_SECURE=False
Надеюсь, это сработает для вас.