目錄
生鮮超市(十) 生鮮超市(十一) 生鮮超市(十二) 生鮮超市(十三)
代碼下載
教程
學習自慕課網-前端vue結合后端DjangoFramework的在線生鮮超市
十一、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上運行項目,相當於在服務器上運行項目了

