一、阿里云服務器購買
選擇快捷方式購買(無需自定義)接校。
二层宫、阿里云服務器連接
重置密碼
安全組設置
ssh root@112.74.55.3
三、服務器基本配置
1.虛擬環(huán)境安裝
第一步: 安裝
pip install virtualenv
pip install virtualenvwrapper
第二步: 查看安裝目錄
type virtualenvwrapper.sh
第三步: 配置
$ vi ~/.bashrc
? ? export WORKON_HOME=~/.virtualenvs
? ? source
/usr/local/bin/virtualenvwrapper.sh
第四步: 創(chuàng)建目錄
$ mkdir ~/.virtualenvs
第五步: 刷新環(huán)境
$ source ~/.bashrc
第六步: 創(chuàng)建虛擬環(huán)境
$ mkvirtualenv python3 -p /usr/bin/python3.5
第七步: 檢查是否成功(是否python3.5版本)
$ python
# 備注: ubuntu中Python2的環(huán)境默認都是全的淘衙,但是Python3
的集成不夠完整,有部分包是欠缺的
apt update
apt install python3-dev
2.數(shù)據(jù)庫安裝
更新
apt update
安裝
apt install mysql-server
設置開機自啟動
systemctl enable mysql.service
查看狀態(tài)
systemctl status mysql.service
連接測試
mysql -uroot -p
3.安裝nginx
安裝
key驗證
wget http://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
/etc/apt/sources.list 文件中添加:(添加到最后)
deb http://nginx.org/packages/ubuntu/ xenial nginx
deb-src http://nginx.org/packages/ubuntu/ xenial nginx
## 更新源
apt update
設置開機自啟動
systemctl enable nginx.service
查看狀態(tài)
systemctl status nginx.service
檢查是否安裝成功
瀏覽器中輸入服務器IP地址(公鑰)腻暮,可以看到`Welcome to nginx!`說明安裝成功!
殺死進程: pkill -9 nginx
從指定路徑加載配置文件
nginx -c configPath
測試執(zhí)行配置文件
nginx -t -c configPath
項目基本配置
- 上傳項目(自己創(chuàng)建www目錄)
? ? $ scp -r axf root@112.74.55.3:/var/www
- 安裝依賴
? ? # 切換到項目目錄中
? ? $ pip install -r requirements.txt(requirements.txt項目中的所有依賴)
- 關閉調試模式 settings.py
? ? DEBUG = False
- 開啟訪問權限 settings.py(項目中的settings.py)
? ? ALLOWED_HOSTS = ['*']
- 啟動項目
? ? $ python manage.py runserver 0.0.0.0:8000
- 瀏覽器(此時靜態(tài)文件是訪問不了的)
? ? 112.74.55.3:8000/(項目路由)(url 中的namespace)/
確保項目是能夠正常啟動的彤守,后續(xù)再對接nginx
在/etc/nginx/ 中創(chuàng)建文件mynginx.conf
編輯此文件(服務器安全規(guī)則中設置為0.0.0.0/0)
user www-data;
worker_processes auto;
pid /run/nginx.pid;
events {
? ? worker_connections 768;
? ? # multi_accept on;
}
http {
? ? ##
? ? # Basic Settings
? ? ##
? ? sendfile on;
? ? tcp_nopush on;
? ? tcp_nodelay on;
? ? keepalive_timeout 65;
? ? types_hash_max_size 2048;
? ? include /etc/nginx/mime.types;
? ? default_type application/octet-stream;
? ? ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
? ? ssl_prefer_server_ciphers on;
? ? access_log /var/log/nginx/access.log;
? ? error_log /var/log/nginx/error.log;
? ? gzip on;
? ? gzip_disable "msie6";
? ? server {
? ? ? ? #監(jiān)聽80端口
? ? ? ? listen 80;
? ? ? ? listen [::]:80 ipv6only=on default_server;
? ? ? ? #服務器IP
? ? ? ? server_name 112.74.55.3;
#靜態(tài)文件配置
? ? ? ? location /static {
? ? ? ? #別名
? ? ? ? alias /var/www/Python1807AXF/static/;
? ? }
? ? }
}
- 關閉nginx
? ? pkill -9 nginx
- 對應配置文件啟動
? ? nginx -c mynginx.conf
- 瀏覽器訪問靜態(tài)文件(確保能夠訪問項目的靜態(tài)文件)
? ? http://服務其地址/static/base/css/reset.css
4.uwsgi安裝
uwsgi基本使用
- 安裝(安裝在虛擬環(huán)境中!!!)
? ? pip install uwsgi
- 項目目錄中 添加 uwsgi.ini文件
? ? # 即是在項目目錄中添加
? ? touch uwsgi.ini
- 配置uwsgi.ini文件(測試: 直接使用uwsgi,而不對接nginx)
進入編輯器添加以下內(nèi)容
? ? [uwsgi]
? ? # 使用nginx連接時 使用
? ? #socket=0.0.0.0:8000
? ? # 直接作為web服務器使用
? ? http=0.0.0.0:8010
? ? # 配置工程目錄
? ? chdir=/var/www/axf/Python1807AXF
? ? # 配置項目的wsgi目錄哭靖。相對于工程目錄
? ? wsgi-file=(與項目名相同的一個文件夾)/wsgi.py
? ? #配置進程具垫,線程信息
? ? processes=1
? ? threads=1
? ? enable-threads=True
? ? master=True
? ? pidfile=uwsgi.pid
? ? daemonize=uwsgi.log
- 使用
? ? 啟動
? ? uwsgi --ini uwsgi.ini
? ? 停止
? ? uwsgi --stop uwsgi.ini
# 訪問測試(確保uswgi能夠啟動項目)
? ? http://服務器IP:8010/項目路由/
查看進程: ps -ef | grep uwsgi
關閉對應服務: pkill -9 uwsgi
uwsgi對接nginx
創(chuàng)建uwsig.ini文件(nginx中創(chuàng)建)
進入編輯器添加以下內(nèi)容
? ? [uwsgi]
? ? # 使用nginx連接時 使用
? ? socket=0.0.0.0:8000
? ? # 配置工程目錄
? ? chdir=/var/www/項目名
? ? # 配置項目的wsgi目錄。相對于工程目錄
? ? wsgi-file=(與項目名相同的一個文件夾)/wsgi.py
? ? #配置進程试幽,線程信息
? ? processes=1
? ? threads=1
? ? enable-threads=True
? ? master=True
? ? pidfile=uwsgi.pid
? ? daemonize=uwsgi.log
瀏覽器訪問(此時不需要端口)
? ? http://112.74.55.3/路由/