我已經改變了我的Apache 2.2的httpd.conf提供靜態文件,同時在Apache上運行的Django和mod_wsgi的2.2
#Serve static files
Alias /static/ "E:\Python\Django\carlsblog\static\"
<Directory "E:\Python\Django\carlsblog\static">
Order allow,deny
Options Indexes
Allow from all
IndexOptions FancyIndexing
</Directory>
#Start mod_wsgi as default handler
WSGIScriptAlias/"E:\Python\Django\carlsblog\django.wsgi"
<Directory "E:\Python\Django\carlsblog">
Allow from all
</Directory>
和我的應用程序可以成功運行,只有靜態文件不能訪問,404拋出Django在
但是,如果我改變這一行
Alias /static/ "E:\Python\Django\carlsblog\static\"
到
Alias /static/ "E:\Python\Django\carlsblog\static"
可以看到靜態文件夾的索引頁,但無法到達文件。當我檢查Apache的錯誤日誌在這個時候,我發現了這樣的事情:
File does not exist "E:\Python\Django\carlsblog\staticmy_static_file.txt"
它似乎有一個「\」丟失,任何人有解決這個想法?
這與Django無關,是一個Apache問題:Django不在服務器中生成環境中的靜態文件,正如文檔中所述。請相應地更改您的標題。 –
這與你的問題沒有關係,但如果你的服務器之外有人來訪問你的Python代碼,你應該刪除它,因爲這是一個巨大的安全問題。 –
@ e-satis我已將django.wsgi移動到E:\ Python \ Django \ carlsblog \ apache中,並更改了<目錄「E:\ Python \ Django \ carlsblog \ apache」> – CarlLee