Django REST framework+Vue 打造生鮮電商專案(筆記八)
阿新 • • 發佈:2018-11-12
(form:http://www.cnblogs.com/derek1184405959/p/8862569.html)
十一、pycharm 遠端程式碼除錯
第三方登入和支付,都需要有伺服器才行(回撥url),我們可以用pycharm去遠端除錯伺服器程式碼
伺服器環境搭建
以全新阿里雲centos7系統為例:
11.1.阿里雲安全組配置
快速建立規則,選好常用埠,授權物件,確定就可以了
還要新增一個安全組規則,設定埠範圍,授權物件,點確定
ssh連線
yum install openssh-server -y
service sshd restart
#xshell連不上,SSH服務端不允許密碼驗證。
#服務端開啟密碼驗證的方法:
vim /etc/ssh/sshd_config 把PasswordAuthentication項為yes 重啟服務 service sshd restart
11.2.mysql安裝
#1.安裝
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server
#2.重啟服務 service mysqld restart #3. 設定bind-ip vim /etc/my.cnf 在 [mysqld]: 下面加一行 bind-address = 0.0.0.0 #4.登入mysql mysql -u root #5. 設定外部ip可以訪問 #mysql中輸入命令: #後面用navicat連線遠端伺服器mysql的使用者名稱和密碼 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; FLUSH PRIVILEGES; #6.設定mysql密碼 進入mysql: set password =password('123456'); #密碼123456 flush privileges;
11.3.pip和python3.6的安裝
#安裝pip
wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate
sudo python get-pip.py
#安裝python3.6
首先安裝這兩個
yum -y install zlib*
yum install openssl-devel -y
1. 獲取 wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz tar -xzvf Python-3.6.2.tgz -C /tmp cd /tmp/Python-3.6.2/ 2. 把Python3.6安裝到 /usr/local 目錄 ./configure --prefix=/usr/local make make altinstall 3. 更改/usr/bin/python連結 ln -s /usr/local/bin/python3.6 /usr/bin/python3
11.4.虛擬環境安裝
yum install python-setuptools python-devel
pip install virtualenvwrapper
#編輯.bashrc檔案
vim ~/.bashrc
#新增進去 export WORKON_HOME=$HOME/.virtualenvs source /usr/bin/virtualenvwrapper.sh #sudo find / -name virtualenvwrapper.sh 檢視你的virtualenvwrapper.sh在什麼地方 #重新載入.bashrc檔案 source ~/.bashrc #虛擬環境儲存的路徑 cd ~/.virtualenvs/ (建立的虛擬環境都會儲存在這個目錄,前面設定的) #建立指定python版本的虛擬環境方法 mkvirtualenv MxShop --python=python3.6
workon MxShop
#進虛擬環境安裝依賴包
首先 pip freeze > requirements.txt
將本地的虛擬環境安裝包匯出來,上傳到伺服器
pip install -r requirements.txt #安裝mysqlclient出問題 centos 7: yum install python-devel mariadb-devel -y ubuntu: sudo apt-get install libmysqlclient-dev 然後: pip install mysqlclient
11.5.navicat遠端連線傳輸資料
用navicat遠端連線到資料庫
- ip:你的伺服器ip
- 使用者名稱:root
- passwd:123456
然後新建資料庫
資料庫建好後開始把本地資料庫中的資料傳到遠端伺服器
11.6.pycharm遠端除錯程式碼
(1)Tools-->>Deployment-->>Configuration
(2)Connect和Mappings設定
設定好後點“Test SFTP connection”,連線到資料庫,然後把專案程式碼上次到遠端資料庫
Tools-->>Deployment-->>Configuration-->>Upload to MxShop
(3)伺服器執行專案
python manage.py runserver 0.0.0.0:8000
發現報錯
settings裡面必須設定允許的HOST,資料庫裡面HOST也要設定為伺服器的ip
ALLOWED_HOSTS = ['*']
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', 'NAME': 'mxshop', #資料庫名字 'USER': 'root', #賬號 'PASSWORD': '123456', #密碼 'HOST': '47.93.198.159', #IP 'PORT': '3306', #埠 #這裡引擎用innodb(預設myisam) #因為後面第三方登入時,要求引擎為INNODB # 'OPTIONS':{'init_command': 'SET storage_engine=INNODB'}, #按照課程會報錯,改為 "OPTIONS":{"init_command":"SET default_storage_engine=INNODB;"} } }
設定完後把settings檔案同步到伺服器中
再執行專案,就可以正常訪問了
(4)pycharm遠端除錯程式碼
pycharm 的interpreter設定為伺服器虛擬環境的python ,這樣相當於在伺服器上執行專案了
然後就會把伺服器虛擬環境中的檔案全部拷貝到本地
點“ok”後,還會載入一些東西,耐心等待一會,完成後
設定Host 0.0.0.0 埠 8000
pycharm上執行專案,相當於在伺服器上執行專案了