Tôi đã cố gắng vài ngày nay để thiết lập Django dưới cây đàn hồi của dịch vụ Web Amazon '. Tôi nghĩ rằng vấn đề tôi đang đánh là một trong những điều này:Thiết lập Django trên AWS Cây đậu đàn hồi: WSGIPath không tìm thấy
ERROR - Your WSGIPath refers to a file that does not exist.
Tôi làm theo các hướng dẫn here và mọi việc suôn sẻ cho đến khi kết thúc Bước 6, nhưng tôi không thể cho cuộc sống của tôi có được bất cứ điều gì để hiển thị khác so với trang Elastic Beanstalk chung từ Bước 5, # 2. Khi tôi chạy
./manage.py runserver
trên máy cục bộ, mọi thứ vẫn hoạt động, nhưng tôi không thể triển khai trang đó. Lần đầu tiên tôi thử với một trang web Django nhỏ tôi đã viết bản thân mình. Nó không hoạt động, vì vậy tôi đã xóa tất cả mọi thứ tôi đã làm và thử lại, điều đó không có tác dụng, vì vậy tôi đã xóa tất cả những điều đó và thử lại bằng cài đặt django mới. Tôi đã thử một vài lần không thích thú với những điều nhỏ nhặt, nhưng tôi nghĩ tôi thiếu một thứ gì đó quan trọng.
Tôi đã thêm tệp python.config như được mô tả trong this tutorial.
Dưới đây là cấu trúc tập tin của tôi:
-.git/
-.mysite/
-myapp/
-__init__.py
-models.py
-tests.py
-views.py
-mysite/
-__init__.py
-settings.py
-urls.py
-wsgi.py
-.ebextensions/
-python.config
-manage.py
-mysite.db
-requirements.txt
Từ settings.py của tôi:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'mysite.db',
'USER': '',
'PASSWORD': '',
'HOST': '',
'PORT': '',
}
}
Dưới đây là python.config:
container_commands: 01_syncdb:
command: "django-admin.py syncdb --noinput"
leader_only: true
option_settings:
- namespace: aws:elasticbeanstalk:container:python
option_name: WSGIPath
value: mysite/wsgi.py
- option_name: DJANGO_SETTINGS_MODULE
value: mysite.settings
- option_name: AWS_SECRET_KEY
value: <This is my secret key>
- option_name: AWS_ACCESS_KEY_ID
value: <This is my access key>
Có một nơi khác tôi cần phải xác định của tôi WSGIPath? Có cách nào để làm điều đó thông qua giao diện điều khiển AWS? Tôi có nên bỏ qua EB hoàn toàn và sử dụng EC2 trực tiếp không?
Vấn đề này đã được giải quyết chi tiết [ở đây] (https://forums.aws.amazon.com/thread.jspa?messageID=396656). Tôi đã lưu trữ tất cả mã trong một thư mục và tôi đã nén (và tải lên) toàn bộ thư mục đó.Những gì tôi nên làm là nén tất cả các tệp có liên quan trong thư mục đó thay vì thư mục, vì vậy khi giải nén tất cả các tệp sẽ nằm trong thư mục gốc của trang. Hy vọng điều này sẽ giúp người khác với cùng một vấn đề. Tôi nghĩ rằng tôi chạy vào cùng một vấn đề tải lên thông qua GUI và thông qua git. – Xephryous
Bạn không nên chỉnh sửa câu hỏi nhưng thêm câu trả lời của riêng bạn và chấp nhận câu hỏi đó. – bikeshedder
Xin lưu ý rằng những thay đổi không được cam kết sẽ không được triển khai, vì vậy bạn nên có tất cả các thay đổi của bạn trên thư mục ".ebextensions" được cam kết để triển khai nó với EB CLI. – nisevi