簡體   English   中英

gunicorn - django - boto - 通過S3保存靜態文件 - 如何將AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY設置為環境變量

[英]gunicorn - django - boto -serve static files via S3 - how to set AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY as environment variables

我使用s3來編寫我的靜態文件和django-storage來為它們提供服務。

    STATICFILES_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
    AWS_STORAGE_BUCKET_NAME = 'mybucket'
    STATIC_URL = 'http://%s.s3.amazonaws.com/' % AWS_STORAGE_BUCKET_NAME

我嘗試在heroku上部署我的應用程序,為了驗證我的進程訪問S3,可以設置訪問憑據:

export AWS_ACCESS_KEY_ID=<key ID>
export AWS_SECRET_ACCESS_KEY=<key>

這適用於heroku。

我為webfaction嘗試了相同的方法,但總是得到以下錯誤:

NoAuthHandlerFound at /admin/
No handler was ready to authenticate. 1 handlers were checked. ['HmacAuthV1Handler'] Check your credentials

所以我的問題是:如何正確設置憑證作為環境。 我可以通過gunicorn訪問S3上的文件的變量。

請注意,我只想通過gunicorn進程憑據。 我不想將它們存儲在配置中。 文件。

我對webfaction一無所知,但boto也會在boto配置文件中查找憑據。 默認情況下,它將在/etc/boto.cfg~/.boto 此文件是INI樣式的配置文件,您需要添加如下所示的憑據:

[Credentials]
aws_access_key_id = <key ID>
aws_secret_access_key = <key>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM