windows下部署django


## Windows下django+apache+mysql+redis項目部署

#### 1.Python3.54安裝
```text
1.從官網下載可執行安裝文件
    https://www.python.org/downloads/windows/
    選擇Windows x86-64 executable installer
    # 預安裝基礎模塊
2.添加系統環境
    如:C:\Python\python27和C:\Python\python27\Scripts
3.更新pip3
    python -m pip install --upgrade pip --force-reinstall
4.安裝項目依賴
    # 先安裝tornado
    pip3 install tornado-5.1.1-cp35-cp35m-win_amd64.whl
    pip3 install -r requirements.txt
5.手動下載並安裝mod_wsgi    
    pip3 install mod_wsgi-4.5.24+ap24vc14-cp35-cp35m-win_amd64.whl
    
6.沒網的情況下安裝依賴包
    # 下載
    pip3 download -d C:\Users\Administrator\Desktop\package -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
    # 安裝
    pip3 install --no-index --find-links=C:\Users\Administrator\Desktop\package -r requirements.txt
    
    
```

#### 2.MySQL5.6安裝
```text
1.添加mysql的bin目錄至系統環境
    C:\Application\MySQL\mysql-5.6.45-winx64\bin
2.創建一個my.ini的文件,放在mysql目錄里面,內容如下
    [mysql]
    # 設置mysql客戶端默認字符集
    default-character-set=utf8 
    [mysqld]
    #設置3306端口
    port = 3306 
    # 設置mysql的安裝目錄
    basedir=E:/mysql-5.7.12-winx64
    # 設置mysql數據庫的數據的存放目錄
    datadir=E:/mysql-5.7.12-winx64/data
    # 允許最大連接數
    max_connections=200
    # 服務端使用的字符集默認為8比特編碼的latin1字符集
    character-set-server=utf8
    # 創建新表時將使用的默認存儲引擎
    default-storage-engine=INNODB
    
    wait_timeout=31536000 
    interactive_timeout=31536000 

3.初始化數據庫、安裝並啟動服務
    mysqld --initialize-insecure  
    mysqld -install # 如果已存在,則刪除:sc delete mysql  或者 mysql -remove
    net start mysql 
4.初始化登錄密碼
    mysqladmin -u root password *******
5.刪除無用配置
    delete from mysql.user where user='';  
    delete from mysql.user where host='::1';
6.令所用用戶可以訪問
    update user set host='%' where user ='root';
    flush privileges;
7.導入項目數據庫(先創建數據庫)
    mysql -uroot -p jx_tesudrm < jx_tesudrm.sql
```

#### 3.Redis3.2.1安裝
```text
# 官網下載地址:http://redis.io/download
# github下載地址:https://github.com/MSOpenTech/redis/tags |Redis-x64-3.2.100
# 1.解壓
# 2.啟動:
    redis-server redis.windows.conf # 指定配置文件開啟
# 3.設置redis服務(開機自啟):
redis-server --service-install redis.windows.conf --loglevel verbose
# 4.常用命令:
#     卸載服務:redis-server --service-uninstall
#     開啟服務:redis-server --service-start
#     停止服務:redis-server --service-stop
# 5.測試:
    redis-cli.exe -h 127.0.0.1 -p 6379
    >> ping
    >> pong
```


#### 4.Apache安裝
```text
1.解壓下載的壓縮包:
    httpd-2.4.41-o102s-x64-vc14-r2.zip
    # 將解壓出的apache24移植指定位置
2.修改配置文件
    C:\Application\Apache24\conf\httpd.conf
    
    Define SRVROOT "C:\Apache24"  #Apache24文件的路徑,其余不用改。
    Listen 192.168.184.146:8000 #此處為你要發布的網站ip地址,此處我用我電腦的ip和端口,你也可以用127.0.0.1:8000用於本地測試;80端口自己設置
    ServerName 192.168.184.146:8000
3.創建apache服務(管理員權限開啟終端) # Define ENABLE_TLS13 "Yes"  
    httpd.exe -k install -n "apache2.4"  #apache2.4是所創建服務器名稱,可更改。
    # 重啟apache命令:httpd.exe -k restart
4.訪問測試:192.168.184.146:8000
5.配置mod_wsgi
    5.1 查看mod_wsgi路徑
        mod_wsgi-express module-config
        >> 記錄下來
        LoadFile "c:/application/python35/python35.dll"
        LoadModule wsgi_module "c:/application/python35/lib/site-packages/mod_wsgi/server/mod_wsgi.cp35-win_amd64.pyd"
        WSGIPythonHome "c:/application/python35"
    5.2 設置django靜態文件路徑
        # settings.py文件中寫入靜態文件物理路徑(已經寫了)
        SITE_ROOT=os.path.join(os.path.abspath(os.path.dirname(__file__)),'..')
        STATIC_ROOT = os.path.join(SITE_ROOT,'static')
        
        # 添加靜態文件訪問邏輯路徑
        STATICFILES_DIRS = [
            os.path.join(BASE_DIR, 'static')
        ]
        
        # 收集靜態文件
        python3 manage.py collectstatic
        
        # 注銷掉物理路徑
        # STATIC_ROOT,SITE_ROOT   
    
    5.2 修改配置文件httpd.conf mod_wsgi-express module-config
        #安裝wsgi模塊后,出來的三行字符,直接復制過來
        LoadFile "c:/application/python35/python35.dll"
        LoadModule wsgi_module "c:/application/python35/lib/site-packages/mod_wsgi/server/mod_wsgi.cp35-win_amd64.pyd"
        WSGIPythonHome "c:/application/python35"
        #設置工程中的wsgi路徑
        WSGIScriptAlias / C:\Pro\Tools\TSDRM\TSDRM\wsgi.py
        #設置工程路徑
        WSGIPythonPath  C:\Pro\Tools\TSDRM
        #設置wsgi路徑
        <Directory C:\Pro\Tools\TSDRM\TSDRM>
            <Files wsgi.py>
                Require all granted
            </Files>
        </Directory>
        #設置靜態文件路徑
        Alias /static C:\Pro\Tools\TSDRM\static
        <Directory C:\Pro\Tools\TSDRM\static>  
            AllowOverride None  
            Options None  
            Require all granted  
        </Directory> 
    5.3 urls.py 靜態文件反向代理
        from django.contrib.staticfiles.urls import staticfiles_urlpatterns
        urlpatterns += staticfiles_urlpatterns()
6.注意:不要導入    win_unicode_console
7.將wkhtmltopdf應用軟件拷貝至apache目錄下
    # 新建文件faconstor
    拷貝static文件夾至faconstor
8.celery在windows下重啟自動啟動
    進入文件夾:
    win7:C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
    win10:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
    放入bat腳本:
    cmd /k "cd /d D:\Pros\TSDRM && python manage.py runserver"
```


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM