Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 静态文件不会加载到Bluehost上托管的Django网站中_Python_Django_Static_Fastcgi_Bluehost - Fatal编程技术网

Python 静态文件不会加载到Bluehost上托管的Django网站中

Python 静态文件不会加载到Bluehost上托管的Django网站中,python,django,static,fastcgi,bluehost,Python,Django,Static,Fastcgi,Bluehost,正如您在网站上看到的: 未正确加载/assets/*下的静态文件 我希望此url(例如)有效: 但事实并非如此(您可以通过单击它来验证) 这是我的设置中的设置。py STATIC_ROOT = '/home6/ptlugorg/workshopvenues/workshopvenues/workshopvenues/assets/' STATIC_URL = 'http://www.workshopvenues.com/assets/' STATICFILES_DIRS = ( '/

正如您在网站上看到的: 未正确加载/assets/*下的静态文件

我希望此url(例如)有效: 但事实并非如此(您可以通过单击它来验证)

这是我的设置中的设置。py

STATIC_ROOT = '/home6/ptlugorg/workshopvenues/workshopvenues/workshopvenues/assets/'

STATIC_URL = 'http://www.workshopvenues.com/assets/'

STATICFILES_DIRS = (
    '/home6/ptlugorg/workshopvenues/workshopvenues/workshopvenues/assets/',
)
路径是正确的,我已经仔细检查过了:

ptlugorg@ptlug.org [~/workshopvenues/workshopvenues/workshopvenues/assets]# pwd
/home6/ptlugorg/workshopvenues/workshopvenues/workshopvenues/assets
如果有帮助的话,我正在使用fastcgi为网站提供服务。我已经按照这里的说明做了

这些是我的配置文件

.htaccess

ptlugorg@ptlug.org [~/public_html/workshopvenues]# cat .htaccess 
AddHandler fcgid-script .fcgi
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ workshopvenues.fcgi/$1 [QSA,L]
工作场所.fcgi

ptlugorg@ptlug.org [~/public_html/workshopvenues]# cat workshopvenues.fcgi 
#!/home6/ptlugorg/python27/bin/python27
import sys, os

# Add a custom Python path.
sys.path.insert(0, "/home6/ptlugorg/python27")
sys.path.insert(13, "/home6/ptlugorg/workshopvenues/workshopvenues")

os.environ['DJANGO_SETTINGS_MODULE'] = 'workshopvenues.settings'
from django.core.servers.fastcgi import runfastcgi
runfastcgi(method="threaded", daemonize="false")
以防您对权限感到疑惑:

ptlugorg@ptlug.org [~/workshopvenues/workshopvenues/workshopvenues]# ls -al
total 52
drwxr-xr-x  3 ptlugorg ptlugorg 4096 Aug  9 03:31 ./
drwxr-xr-x  4 ptlugorg ptlugorg 4096 Aug  9 02:52 ../
drwxr-xr-x 11 ptlugorg ptlugorg 4096 Aug  8 15:33 assets/
-rw-r--r--  1 ptlugorg ptlugorg    0 Aug  8 14:23 __init__.py
-rw-r--r--  1 ptlugorg ptlugorg  144 Aug  8 14:25 __init__.pyc
-rw-r--r--  1 ptlugorg ptlugorg  430 Aug  8 15:20 secrets.py
-rw-r--r--  1 ptlugorg ptlugorg  527 Aug  8 15:20 secrets.pyc
-rw-r--r--  1 ptlugorg ptlugorg 5779 Aug  9 03:31 settings.py
-rw-r--r--  1 ptlugorg ptlugorg 3399 Aug  9 03:31 settings.pyc
-rw-r--r--  1 ptlugorg ptlugorg  614 Aug  8 14:23 urls.py
-rw-r--r--  1 ptlugorg ptlugorg  467 Aug  8 15:23 urls.pyc
-rw-r--r--  1 ptlugorg ptlugorg 1150 Aug  8 14:23 wsgi.py
-rw-r--r--  1 ptlugorg ptlugorg 1058 Aug  8 15:21 wsgi.pyc

ptlugorg@ptlug.org [~/workshopvenues/workshopvenues/workshopvenues/assets]# ls -al
total 48
drwxr-xr-x 11 ptlugorg ptlugorg 4096 Aug  8 15:33 ./
drwxr-xr-x  3 ptlugorg ptlugorg 4096 Aug  9 03:31 ../
drwxr-xr-x  5 ptlugorg ptlugorg 4096 Aug  8 15:33 admin/
drwxr-xr-x  5 ptlugorg ptlugorg 4096 Aug  8 14:23 bootstrap/
drwxr-xr-x  2 ptlugorg ptlugorg 4096 Aug  8 14:23 css/
drwxr-xr-x  5 ptlugorg ptlugorg 4096 Aug  8 15:33 django_extensions/
drwxr-xr-x  2 ptlugorg ptlugorg 4096 Aug  8 14:23 font-awesome/
drwxr-xr-x  2 ptlugorg ptlugorg 4096 Aug  8 14:23 ico/
drwxr-xr-x  7 ptlugorg ptlugorg 4096 Aug  8 14:23 img/
drwxr-xr-x  2 ptlugorg ptlugorg 4096 Aug  8 14:23 js/
drwxr-xr-x  5 ptlugorg ptlugorg 4096 Aug  8 14:23 prettyPhoto/
一切似乎都是正确的,但它仍然没有按预期工作。你知道问题出在哪里吗?我可以做什么测试来验证是否有问题


谢谢你的帮助

多亏了#django(Freenode IRC频道)中一位善良的用户mattmcc,我才得以修复它。实际上,这是静态根中的一个问题。它指向物理文件位置,而不是文档根位置

正确的设置.py如下所示:

STATIC_ROOT = '/home6/ptlugorg/public_html/workshopvenues/assets/'

STATIC_URL = '/assets/'

STATICFILES_DIRS = (
    '/home6/ptlugorg/workshopvenues/workshopvenues/workshopvenues/assets/',
)

现在一切正常:)

为了清晰起见:

  • STATIC\u ROOT
    (所有应用程序中所有静态文件的存放目录)需要位于
    public\u html/yoursite
    文件夹中才能工作

检查这个答案,似乎您必须运行python manage.py collectstatic,并在URL中添加一些行。py

如果您将django设置为调试模式,文件会通过django提供吗?如果是这种情况,则表示您的Web服务器无法为静态内容提供服务器。