Сервер AWS EC2 не обслуживает некоторые страницы и статические файлы должным образом
Я только что развернул website на AWS EC2 с клона github. Когда я посещаю Influencer Marketing & Career страницы, сервер правильно обслуживает статические файлы из S3 Bucket. Но когда я посещаю домашнюю страницу и Кто мы, сервер не обслуживает статические файлы, и я не получаю содержимое этих страниц (необработанные данные). Я предполагаю, что он не обслуживает статические файлы, это нормально, но куда делось содержимое обеих страниц. Что я здесь упускаю. Я новичок в AWS и развертывании веб-сайтов, так что если я сделал какую-то ошибку, пожалуйста, дайте мне сейчас, я исправлю ее. Если вам нужна дополнительная информация, я добавлю ее.
Здесь вы можете перейти на обе домашние страницы и страницу "Кто мы" -ссылка
Настройте Nginx на прокси-передачу Gunicorn
[Unit]
Description=gunicorn daemon
Requires=gunicorn.socket
After=network.target
[Service]
User=ubuntu
Group=www-data
WorkingDirectory=/home/ubuntu/try-django-digital-marketing/try-django-digital-marketing
ExecStart=/home/ubuntu/try-django-digital-marketing/try-django-digital-marketing/env/bin/gunicorn \
--access-logfile - \
--workers 3 \
--bind unix:/run/gunicorn.sock \
BE.wsgi:application
server {
listen 80;
server_name 3.17.142.65;
location = /favicon.ico { access_log off; log_not_found off; }
location / {
include proxy_params;
proxy_pass http://unix:/run/gunicorn.sock;
}
}
Политика ведра, кросс-оригинальный обмен ресурсами (CORS) & Политика пользователя
{
"Version": "2008-10-17",
"Statement": [
{
"Sid": "PublicReadGetObject",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": [
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::try-marketing/*"
}
]
}
__________________________________________________
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"POST",
"GET",
"PUT"
],
"AllowedOrigins": [
"*"
],
"ExposeHeaders": []
}
]
___________________________________________________
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"s3:PutObject",
"s3:PutObjectAcl",
"s3:GetObject",
"s3:GetObjectAcl",
"s3:AbortMultipartUpload"
],
"Resource": [
"arn:aws:s3:::try-marketing",
"arn:aws:s3:::try-marketing/*"
],
"Effect": "Allow"
}
]
}
AWS Conf file
AWS_USERNAME = 'user11111'
AWS_ACCESS_KEY_ID = 'xxxxxxxxxx'
AWS_SECRET_ACCESS_KEY = 'xxxxxxxxxxxx'
AWS_PRELOAD_METADATA = True
AWS_QUERYSTRING_AUTH = False
AWS_S3_SIGNATURE_VERSION = "s3v4"
AWS_S3_REGION_NAME = 'us-east-2'
DEFAULT_FILE_STORAGE = 'BE.aws.utils.MediaRootS3BotoStorage'
STATICFILES_STORAGE = 'BE.aws.utils.StaticRootS3BotoStorage'
AWS_STORAGE_BUCKET_NAME = 'try-marketing'
S3DIRECT_REGION = 'us-east-2'
S3_URL = '//%s.s3.amazonaws.com/' % AWS_STORAGE_BUCKET_NAME
MEDIA_URL = '//%s.s3.amazonaws.com/media/' % AWS_STORAGE_BUCKET_NAME
MEDIA_ROOT = MEDIA_URL
STATIC_URL = S3_URL + 'static/'
ADMIN_MEDIA_PREFIX = STATIC_URL + 'admin/'
AWS_DEFAULT_ACL = None
Я не вижу, чтобы изображения вообще запрашивались на вашей домашней странице. Это указывает на проблему в вашем HTML-источнике (он неправильно интерпретируется браузером). Я бы предложил вам исправить проблемы, выявленные валидатором W3 https://validator.w3.org/nu/?doc=http%3A%2F%2F3.17.142.65%2F. и посмотреть, поможет ли это.
провел небольшой реверс-инжиниринг вашего сайта..... некоторые из ваших страниц отсутствуют на страницах, которые не обслуживают статический файл
добавьте это в раздел заголовков страниц, которые не обслуживают статический файл
<link rel="stylesheet" href='https://try-marketing.s3.amazonaws.com/static/home/influncers_assets/css/bootstrap.min.css'>
<link rel="stylesheet" href='https://try-marketing.s3.amazonaws.com/static/home/influncers_assets/css/font-awesome.min.css'>
<link rel="stylesheet" href='https://try-marketing.s3.amazonaws.com/static/home/influncers_assets/css/owl.carousel.min.css'>
<link rel="stylesheet" href='https://try-marketing.s3.amazonaws.com/static/home/influncers_assets/css/nice-select.css'>
<link rel="stylesheet" href='https://try-marketing.s3.amazonaws.com/static/home/influncers_assets/css/magnific-popup.css'>
<link rel="stylesheet" href='https://try-marketing.s3.amazonaws.com/static/home/influncers_assets/css/slicknav.min.css'>
<link rel="stylesheet" href='https://try-marketing.s3.amazonaws.com/static/home/influncers_assets/css/animate.css'>
<!-- Main Stylesheets -->
<link rel="stylesheet" href='https://try-marketing.s3.amazonaws.com/static/home/influncers_assets/css/style.css'>
<!-- from main static files-->
<link rel="stylesheet" href='https://try-marketing.s3.amazonaws.com/static/home/css/main.css'>
<link rel="stylesheet" href='https://try-marketing.s3.amazonaws.com/static/home/css/try.scss'>
<link href="https://try-marketing.s3.amazonaws.com/static/home/vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<link href="https://try-marketing.s3.amazonaws.com/static/home/vendor/bootstrap-icons/bootstrap-icons.css" rel="stylesheet">
<link href="https://try-marketing.s3.amazonaws.com/static/home/vendor/aos/aos.css" rel="stylesheet">
<link href="https://try-marketing.s3.amazonaws.com/static/home/vendor/glightbox/css/glightbox.min.css" rel="stylesheet">
<link href="https://try-marketing.s3.amazonaws.com/static/home/vendor/swiper/swiper-bundle.min.css" rel="stylesheet">