cari

Rumah  >  Soal Jawab  >  teks badan

django - Apakah sebab mengapa fail statik tidak boleh diakses dengan ralat 403 selepas memindahkan nginx ke Alibaba Cloud?

p.s: Projek Django boleh berjalan dengan jayanya secara tempatan, tetapi ia tidak berfungsi selepas berhijrah ke Alibaba Cloud.

Persekitaran berjalan: ubuntu14.04+uwsgi+nginx+django1.9.

Ini adalah tangkapan skrin halaman pentadbir apabila mengakses Django Semua fail css tidak boleh dimuatkan Mesej ralat terperinci disiarkan di bawah.

Lokasi projek di Alibaba Cloud ialah /root/mysite.

/etc/nginx/site-enabled/mysite.conf adalah seperti berikut

server {
    listen 8080;
    server_name www.domainname.com;

    location /static/ {
        alias /root/mysite/blog/static/;
    }

    location / {
        uwsgi_pass 127.0.0.1:8001;
        include     /etc/nginx/uwsgi_params;
    }
}

Soalan tambahan: Semua fail statik telah dikumpul dalam direktori yang ditentukan oleh alias saya

$ python manage.py collectstatic
0 static files copied to '/root/mysite/blog/static', 69 unmodified.

# 文件权限没有问题
$ ll /root/mysite/blog/static
total 16
drwxrwxr-x 4 root root 4096 Oct  5 09:13 ./
drwxrwxr-x 6 root root 4096 Oct  5 15:28 ../
drwxrwxr-x 6 root root 4096 Oct  5 09:13 admin/
drwxrwxr-x 5 root root 4096 Oct  5 09:13 blog/
# mysite/settings.py中已经指定了下面两项,**collectstatic**也收集成功,所以我觉得配置可能不存在问题
# 而且项目在本地能够运行,就是迁移到阿里云后无法运行了,所以是不是可能是阿里云的权限问题。
STATIC_URL="/static/"
STATIC_ROOT = os.path.join(BASE_DIR, 'blog/static')

Ini ialah betulhalaman

localhost:8080/admin semasa saya bereksperimen secara tempatan.

伊谢尔伦伊谢尔伦2756 hari yang lalu570

membalas semua(2)saya akan balas

  • 怪我咯

    怪我咯2017-05-16 17:15:48

    alias /root/mysite/blog/static/;

    /root Direktori hanya boleh diakses secara root secara lalai. Tidak kira bagaimana membuka fail di bawahnya, tidak berguna jika nginx tidak dapat mengaksesnya.

    Fail tapak web biasanya diletakkan di bawah /srv/http.

    Selain itu, jika anda tidak mahu pelayan anda digunakan sebagai ayam pedaging, menyerang orang lain, menghantar spam atau berfungsi sebagai proksi percuma, jangan jalankan program web dengan keistimewaan root.

    balas
    0
  • 阿神

    阿神2017-05-16 17:15:48

    Saya tidak tahu banyak tentangnya, saya hanya menggunakan pelayan Alibaba Cloud ECS untuk membina blog

    balas
    0
  • Batalbalas