0
我在CentOS 7服務器上部署一個名爲deploy_project
的Django 1.9項目的代碼如下。我在Django生產部署中缺少什麼?
wsgi.py
import os
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "deploy_project.settings")
application = get_wsgi_application()
被默認生成的上方。
的httpd.conf
WSGIScriptAlias//var/www/deploy_project/deploy_project/wsgi.py
WSGIPythonPath /var/www/deploy_project
<Directory /var/www/deploy_project/deploy_project>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
我的項目目錄是/var/www/deploy_project
。裏面有一個名爲Deploy
的應用程序,項目設置文件夾的名稱與項目名稱deploy_project
和manage.py
文件相同。因爲我沒有使用MySQL,所以我也有一個db.sqlite3
文件,但是我的應用程序只運行一個顯示Hello World的視圖。我沒有使用數據庫。
當我從瀏覽器訪問服務器IP時,收到一條404 Not Found頁面,其中包含消息The requested URL/was not found on this server.
。項目文件夾的
樹輸出
├── db.sqlite3
├── deploy
│ ├── admin.py
│ ├── admin.pyc
│ ├── apps.py
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── migrations
│ │ ├── __init__.py
│ │ └── __init__.pyc
│ ├── models.py
│ ├── models.pyc
│ ├── templates
│ │ ├── 404.html
│ │ └── deploy
│ │ └── hello.html
│ ├── tests.py
│ ├── urls.py
│ ├── urls.pyc
│ ├── views.py
│ └── views.pyc
├── deploy_project
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── settings.py
│ ├── settings.pyc
│ ├── urls.py
│ ├── urls.pyc
│ ├── wsgi.py
│ └── wsgi.pyc
└── manage.py
項目urls.py
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^', include('deploy.urls')),
]
應用urls.py
urlpatterns = [
url(r'^$', views.Hello, name='hello'),
]
views.py
def Hello(request):
return render(request, "deploy/hello.html", {})
hello.html的
Hello World!
閱讀[文檔](https://docs.djangoproject.com/en/1.9/howto/deployment/)。 –
@BurhanKhalid這就是我配置httpd.conf文件的方式。我還需要什麼?如果你能指出鏈接到文檔。 – MiniGunnR
我在評論中添加了文檔鏈接。有多種支持的配置;但是當你在Apache上時,最簡單的一個就是[mod_wsgi配置](https://docs.djangoproject.com/en/1.9/howto/deployment/wsgi/modwsgi/),你可以在這裏找到:https://docs.djangoproject.com/en/1.9/howto/deployment/wsgi/modwsgi/ –