2016-03-13 30 views
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_projectmanage.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! 
+0

閱讀[文檔](https://docs.djangoproject.com/en/1.9/howto/deployment/)。 –

+0

@BurhanKhalid這就是我配置httpd.conf文件的方式。我還需要什麼?如果你能指出鏈接到文檔。 – MiniGunnR

+0

我在評論中添加了文檔鏈接。有多種支持的配置;但是當你在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/ –

回答

0

身爲啞開發者,我,我沒有重啓apache服務,所以我的設置沒有生效。

爲CentOS 7我的命令是:

sudo systemctl restart httpd 

這解決了我的問題。感謝您的時間@BurhanKhalid。