2014-06-25 55 views
0

我有一個相當簡單的Django應用程序,我已經添加了Twitter Bootstrap。Bootstrap的CSS鏈接在localhost中可用,但不在部署服務器上

它在本地Django服務器上按預期工作http://127.0.0.1:8000/surveythree/但是,當我將其部署到我的生產服務器http://phaedrus.scss.tcd.ie/bias_experiment/surveythree/時,CSS不起作用。

我已經嘗試了以下鏈接的許多變體。

<link href = "/static/css/bootstrap.min.css" rel = "stylesheet"> 
<link href = "http://phaedrus.scss.tcd.ie/bias_experiment/src/survey/static/css/bootstrap.min.css" rel = "stylesheet"> 

我的項目設置。

enter image description here

回答

3
<link href="./static/css/bootstrap.min.css" rel="stylesheet>" 

這裏「./static」是指在當前目錄下,如果在名爲「靜態」的文件夾正在使用「/static」這意味着根目錄中名爲「靜態」的文件夾。 兩者在服務器端有所不同。

,如果它不能正常工作,那麼你可以添加它的引導鏈接

<!-- Latest compiled and minified CSS --> 
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css"> 

<!-- Optional theme --> 
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap-theme.min.css"> 

<!-- Latest compiled and minified JavaScript --> 
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script> 
2

我會假設你不使用「調試=真正的」部署服務器上(settings.py中)。 所以基本上,Django在生產中不提供靜態文件。您可以將服務器配置爲做到這一點,因爲在這個文檔描述:https://docs.djangoproject.com/en/dev/howto/static-files/deployment/

如果您正在使用的Apache2,你可以在你的虛擬主機中加入這一行:

Alias /static /path/to/your/static/folder 

,然後繼續使用Django的{%靜態%}:

<link href = "{% static '/css/bootstrap.min.css' %}" rel = "stylesheet"> 

希望它可以幫助

PS:如果debug = true可啓用,您應檢查STATIC_URL在你的settings.py和e你用來訪問每個文件的路徑。

編輯:別忘了重新啓動服務器,如果你去我的解決方案(如果它的工作原理)

相關問題