xftp上傳到服務器html
lrzsz工具前端
在linux命令行模式下, 輸入python3,可以正常進入python3的解釋器vue
1 安裝虛擬環境virtualenvnode
2 安裝virtualenvwrapper工具python
3 確認virtualenvwrapper.sh腳本正常使用mysql
4 確認用戶環境變量配置文件,有virtualenvwrapper.sh的四行配置linux
WORKON_HOME=~/Envs VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' VIRTUALENVWRAPPER_PYTHON=/opt/python36/bin/python3 source /opt/python36/bin/virtualenvwrapper.sh
5 建立路飛學城專用虛擬環境nginx
luffy_city_env
6 上傳requirements.txt面試
關於requirements.txt的一些操做redis
生成requirements.txt文件 pip freeze > requirements.txt 安裝requirements.txt依賴 pip install -r requirements.txt
7 安裝路飛學城項目所須要的全部模塊
#centos7底下,mariadb就是mysql數據庫,只是包名的不一樣 #啓動mariadb服務端 #使用客戶端去連接mysql服務端
有兩種方法
第一種:
mysqldump -u root -p --all-databases > luffy_city.sql
第二種:
直接從navicat導出數據庫的數據 (1) 先從navicat導出數據庫數據,導出爲luffycity.sql (2) 將luffycity.sql上傳到服務器的/opt目錄下 (3) 在服務器上進入mysql,而後建立數據庫luffycity (4) 進入數據庫luffycity (5) 使用命令source luffycity.sql導入luffycity.sql數據 (6) 使用show tables命令查看數據是否成功導入
出路飛學城項目的數據庫, 容許root用戶遠程登陸
# 容許root用戶遠程登陸,而且給予全部數據庫全部表的全部權限 grant all privileges on *.* to root@'%' identified by 'nihao123'; flush privileges;
linux的mysql,導入這個數據文件
(1) 進入mysql mysql -u root -p (2) 進入數據庫 use luffycity (3) 導入數據 source /opt/luffycity.sql
(1) 先修改路飛學城項目的settings.py文件
ALLOW_HOSTS=["*"] 數據庫鏈接配置 注意: mariadb就是mysql,這裏的ENGINE不用修改 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', "HOST": "127.0.0.1", "PORT": 3306, "USER": "root", "PASSWORD": "nihao123", "NAME": "luffycity", } }
(2) 使用命令把django跑起來
python3 manage.py runserver 0.0.0.0:8000
(1) 進入luffy_city_env虛擬環境 workon luffy_city_env (2) 安裝uwsgi pip3 install uwsgi
(1) 建立一個testqishi2.py (2) 寫入如下幾行代碼 def application(env, start_response): start_response('200 OK', [('Content-Type','text/html')]) return [b"Hello World"] # python3 (3) 經過uwsgi命令將測試文件跑起來 uwsgi --http :9000 --wsgi-file testqishi2.py (4) 測試經過IP+端口訪問 http://192.168.12.60:9000
uwsgi --http :9000 --module luffy.wsgi
uwsgi --http :9000 --module luffy.wsgi --py-autoreload=1
(1) 建立一個配置文件uwsgi.ini(注意,這個配置文件無論放在哪裏均可以,可是啓動的時候,須要找到這個配置文件)
(2) 寫入如下配置
[uwsgi] chdir = /opt/luffy_city/luffy module = luffy.wsgi home = /root/Envs/luffy_city_env master = true processes = 1 socket = 0.0.0.0:8000 http = 0.0.0.0:8000 vacuum = true
(3) 經過指定uwsgi.ini配置文件把django跑起來
uwsgi uwsgi.ini
[uwsgi] # Django-related settings # the base directory (full path) # 寫上項目的絕對路徑 chdir = /opt/book_manage # Django's wsgi file # 填寫找到django的wsgi文件,填寫相對路徑,以chdir參數爲相對路徑 module = book_manage.wsgi # the virtualenv (full path) # 填寫虛擬環境的絕對路徑 home = /root/Envs/book_manage_env/ # process-related settings # master #啓動uwsgi主進程 master = true # maximum number of worker processes processes = 1 # the socket (use the full path to be safe #若是你使用了nginx,作反向代理,必須填寫socket連接,而不是http參數 socket = 0.0.0.0:8000 #若是你不用nginx,直接使用uwsgi,運行一個http服務端,就用這個http參數 http = 0.0.0.0:8000 # ... with appropriate permissions - may be needed # chmod-socket = 664 # clear environment on exit vacuum = true
因爲uwsgi 不支持處理靜態文件,因此,咱們須要配置nginx與uwsgi結合,經過nginx來處理靜態文件
(1) 修改settings.py配置文件, 加入如下一行配置
STATIC_ROOT='/opt/luffy_city/static'
(2) 建立靜態文件存放目錄/opt/luffy_city/static
mkdir -p /opt/luffy_city/static
(3) 一條命令收集django項目下面的全部靜態文件
python3 manage.py collectstatic
看到這個信息說明已經成功收集
(1)在nginx.conf配置文件下添加如下配置文件
location / { include /opt/nginx112/conf/uwsgi_params; uwsgi_pass 0.0.0.0:9000; }
(2) 將uwsgi.ini配置文件裏面的http註釋掉,啓用socket
socket = 0.0.0.0:9000 # 啓用此行 # http = 0.0.0.0:9000 # 停用此行
(3) 在nginx.conf中添加靜態文件地址
location /static { alias /opt/luffy_city/static; }
(4) 平滑重啓nginx
/opt/nginx112/sbin/nginx -s reload
若出現pid錯誤,則是由於沒有啓動nginx
須要啓動
/opt/nginx112/sbin/nginx
(5) 在物理機上添加hosts
192.168.12.56 www.qishi2.com
1 驗證域名是否正常訪問
2 驗證靜態文件是否正常顯示
3 驗證數據庫是否鏈接正常
4 驗證redis數據庫是否鏈接正常
5 驗證uwsgi是否正常啓動
(1) 下載安裝node軟件包
wget https://nodejs.org/download/release/v8.6.0/node-v8.6.0-linux-x64.tar.gz
(2) 解壓縮
tar -zxvf node-v8.6.0-linux-x64.tar.gz
(3) 添加環境變量
進入編輯環境變量設置文件
vim /etc/profile
添加node的環境變量
PATH=/opt/node-v8.6.0-linux-x64/bin:/opt/python36/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
(4) 將vue項目裏面的全部127.0.0.1和全部的localhost所有改成咱們的服務器地址192.168.12.56
(5) 進入到vue前端的項目目錄, 使用npm run build生成dist項目靜態文件
cd /opt/luffy_city/luffy_pc
npm run build
(6) 在luffy_pc目錄下就能夠看到dist文件夾,dist中生成一個indx.html,到時讓nginx指向這個index.html便可
/opt/luffy_city/luffy_pc/dist
(7) 以後只要在/opt/nginx112/conf/nginx.conf
配置:
server { #用戶訪問域名或者ip,默認是nginx的80端口 listen 80; server_name 192.168.119.12; #url匹配 / 也就是請求地址是192.168.119.12時,進入此location,返回vue的dist下index.html路飛學城首頁 location / { root /opt/07-luffy_project_01/dist; #index.html文件的位置 index index.html; } }
1 安裝supervisor
因爲supervisor在python3下沒法使用,所以只能用python2去下載!!!!!!
因爲supervisor在python3下沒法使用,所以只能用python2去下載!!!!!!
因爲supervisor在python3下沒法使用,所以只能用python2去下載!!!!!!
# 注意此時已經退出虛擬環境了!!!!!
easy_install supervisor # 若是沒有easy_install的話,就yum安裝一個setuptools工具就能夠用了 yum install python-setuptools
2 生成supervisord配置文件
echo_supervisord_conf > /etc/supervisord.conf
3 在/etc/supervisord.conf下添加如下兩行配置
[program:luffy_city]
command=/root/Envs/luffy_city_env/bin/uwsgi /opt/luffy_city/luffy/uwsgi.ini
4 啓動supervisor
supervisord -c /etc/supervisord.conf # 啓動supervisor supervisorctl -c /etc/supervisord.conf # 啓動和進入supervisor交互模式
5 查看supervisor運行狀態
supervisorctl # 使用此命令後將會進入supervisor交互式管理界面 status # 查看進程運行狀態
6 管理supervisor裏面的進程
stop luffy_city # 關閉luffy_city進程 stop all # 關閉全部進程 start luffy_city # 開啓luffy_city進程 start all # 開啓全部進程 status # 查看全部進程運行狀態 supervisorctl status # 能夠不用進入交互模式查看
訪問nginx的80端口,便可找到路飛學城應用,且保證靜態文件頁面正常