linux django搭建网站,Linux下搭建Django站点一
系統環境:CentOS?6.2
Python版本:2.7.8
1、安裝Django:
1.1、pip安裝:
pip install django
1.2、easy_install安裝:
easy_install?django
1.3、編譯安裝:
下載地址:
tar -zxvf?Django-1.10.5.tar.gz
cd?Django-1.10.5
python setup.py install
1.4、git安裝
git clone
cdDjango-1.10.5
python setup.py install
安裝完成后,執行如下命令驗證是否安裝成功:
查看django安裝路徑:echo "$(dirname $(python -c "import django; print django.__file__"))/bin/django-admin.py"
命令介紹:
點擊(此處)折疊或打開
# django-admin.py--help
[django]
check
compilemessages
createcachetable
dbshell
diffsettings
dumpdata
flush
inspectdb
loaddata
makemessages
makemigrations
migrate
runserver
sendtestemail
shell
showmigrations
sqlflush
sqlmigrate
sqlsequencereset
squashmigrations
startapp
startproject
test
testserver
django-admin.py startproject my_web #創建項目
點擊(此處)折疊或打開
#python manage.py--help #幫助文檔
Available subcommands:
[auth]
changepassword
createsuperuser
[contenttypes]
remove_stale_contenttypes
[django]
check
compilemessages
createcachetable
dbshell
diffsettings
dumpdata
flush
inspectdb
loaddata
makemessages
makemigrations
migrate
sendtestemail
shell
showmigrations
sqlflush
sqlmigrate
sqlsequencereset
squashmigrations
startapp
startproject
test
testserver
[sessions]
clearsessions
[staticfiles]
collectstatic
findstatic
runserver
#python manage.py startapp article #創建app
#python manage.py runserver 0.0.0.0:80 #啟動Django中的開發服務器,地址localhost 可端口。例:9000
2、建立項目:
#ln -s /usr/local/python27/bin/django-admin /usr/bin/django-admin
#django-admin startproject testdj(項目名)
#cd testdj/
目錄內容如下:
manage.py:是Django用于管理本項目的命令行工具,之后進行站點運行、數據庫自動生成、靜態文件收集等都要通過該文件完成。
內層testdj目錄中包含了一下文件:
__init__.py:告訴Python該目錄是一個Python包,其中暫無內容。
settings.py:Django的項目配置文件。默認時,在其中定義了本項目引用的Django組件、Django項目名等。在之后的開發中,還需在其中配置數據庫參數、導入的其它Python包等信息。
urls.py:維護項目的URL路由映射,即定義客戶端訪問的URL由哪一個Python模塊解釋并提供反饋。默認情況下,其中只定義了"/admin"即管理員站點的解釋器。
wsgi.py:定義WSGI的接口信息,用于與其它Web服務器集成,一般本文件在生成后無須改動。
3、建立應用
# cd /tmp/testdj/
#python manage.py startapp app(應用名)
報錯:django.core.exceptions.ImproperlyConfigured: Error loading either pysqlite2 or sqlite3 modules (tried in that order): No module named _sqlite3點擊(此處)折疊或打開
yum install -y sqlite sqlite-devel
重新編譯一下python
cd Python-2.7.8/
./configure --prefix=/usr/local/python2.7.8 --with-openssl
make && make install
# python
>>> import sqlite3
>>>
其中的文件功能介紹:
__init__.py:告訴Python該目錄是一個Python包,其中暫無內容。
admin.py:管理站點模型的聲明文件,默認為空。
apps.py:應用信息定義文件。在其中生成了類AppConfig,該類用于定義應用名等Meta數據。
migrations包:用于在之后定義引用遷移功能。
models.py:添加模型層數據類的文件。
tests.py:測試代碼文件。
views.py:定義URL響應函數。
在testdj/app/views.py中建立一個路由響應函數:
點擊(此處)折疊或打開
from django.shortcuts import render
# Create your views here.
from django.http import HttpResponse
def welcome(request):
return HttpResponse("
Welcome to my home!
")
在testdj/app/目錄中新建一個urls.py文件,管理應用app中的所有URL映射:
點擊(此處)折疊或打開
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'', views.welcome),
]
在項目URL文件testdj/urls.py的urlpatterns中增加一項,聲明對應用app中urls.py文件的引用:
點擊(此處)折疊或打開
from django.conf.urls import url
from django.contrib import admin
from django.conf.urls import include ? ? ? ? ? ? #新增項
urlpatterns = [
url(r'^app/', include('app.urls')), ? ? ? ? ?#新增項
url(r'^admin/', admin.site.urls),
]
4、內置Web服務器
#cd?/tmp/testdj
#python manage.py runserver 0.0.0.0:8001
如有如下報錯,需修改testdj/testdj/settings.py文件中:
ALLOWED_HOSTS = [''] 為?ALLOWED_HOSTS = ['localIP']
訪問Web頁面:
總結
以上是生活随笔為你收集整理的linux django搭建网站,Linux下搭建Django站点一的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab 设计带阻型陷波滤波器_Q值
- 下一篇: python安装cv2模块_python