1. 安装python3.7
sudo adduser hujiaming
sudo passwd hujiaming
sudo yum install git
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum install libffi-devel -y
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
yum -y install nginx
cd /home/hujiaming
wget https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tar.xz
tar -xvJf Python-3.7.1.tar.xz
mkdir /usr/local/python3
cd Python-3.7.0
./configure --prefix=/usr/local/python3
make && make install
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
python3 -V
pip3 -V
sudo yum install python-virtualenv -y
mkdir /home/hujiaming/env && cd /home/hujiaming/env
virtualenv haoji --python=python3
2. 安装MySQL
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
sudo yum install mysql-server
service mysqld restart
mysql -u root
use mysql;
update user set password=password('new password') where user='root';
flush privileges;
create database haoji default charset utf8 collate utf8_general_ci;
create user haoji@localhost identified by '123456';
grant all on haoji.* to haoji@localhost;
flush privileges;
3. 安装redis
cd /home/hujiaming
wget http://download.redis.io/releases/redis-4.0.2.tar.gz
tar xzf redis-4.0.2.tar.gz
cd redis-4.0.2
make && make install
cp /home/hujiaming/redis-4.0.2/utils/redis_init_script /etc/init.d/redis_6379
mkdir /etc/redis
mkdir -p /var/redis/6379
cp /home/hujiaming/redis-4.0.2/redis.conf /etc/redis/6379.conf
cd /etc/redis/
vim 6379.conf
daemonize yes
pidfile /var/run/redis_6379.pid
port 6379
dir /var/redis/6379
vim /etc/init.d/redis_6379
chkconfig redis_6379 on
service redis_6379 start
service redis_6379 stop
redis-cli SHUTDOWN
4. 配置nginx和uwsgi
pip3 install -r requirements.txt
pip3 install uwsgi
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi
<uwsgi>
<socket>127.0.0.1:8004</socket><!-- 内部端口,自定义 -->
<chdir>/home/hujiaming/haoji</chdir><!-- 项目路径 -->
<module>haoji.wsgi</module>
<processes>4</processes> <!-- 进程数 -->
<daemonize>uwsgi.log</daemonize><!-- 日志文件 -->
</uwsgi>
yum install nginx nginx-server
vi /etc/nginx/nginx.conf
在http里面
pstream django {
server 127.0.0.1:8004;
}
server {
listen 80;
server_name yourip;
charset utf-8;
client_max_body_size 75M;
location /media {
alias /var/www/mysite/media;
}
location /static {
alias /var/www/mysite/static;
}
location / {
uwsgi_pass django;
include /var/www/mysite/uwsgi_params;
}
}
vi /etc/rc.local
/usr/local/bin/uwsgi --ini /var/www/mysite/uwsgi.ini
/usr/local/nginx/sbin/nginx -t
/usr/local/nginx/sbin/nginx
cd /home/hujiaming/haoji
uwsgi -x haoji.xml
/usr/local/nginx/sbin/nginx -s reload
在浏览器中输入ip:8080即可访问项目
5. 配置项目
vim settings.py
ALLOWED_HOST = ['*']
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATICFILES_DIRS = ( os.path.join(BASE_DIR, 'static'),)
vim haoji/urls.py
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
pip3 install aliyun-python-sdk-core-v3
pip3 install aliyun-python-sdk-dysmsapi
pip3 install pymysql
5. 配置后台管理xadmin
pip install git+https://github.com/sshwsfc/xadmin.git@django2
'xadmin',
'crispy_forms',
'reversion',
import xadmin
xadmin.autodiscover()
from xadmin.plugins import xversion
xversion.register_models()
urlpatterns += path(r'admin', xadmin.site.urls)
python manager.py makemigrations
python manager.py migrate
import xadmin
from xadmin import views
class BaseSetting(object):
enable_themes = True
use_bootswatch = True
class GlobalSettings(object):
site_title = 'haoji后台系统'
site_footer = '好记haoji'
xadmin.site.register(views.BaseAdminView, BaseSetting)
xadmin.site.register(views.CommAdminView, GlobalSettings)
6. Nginx日志可视化工具goaccess使用
yum install glib2 glib2-devel GeoIP-devel ncurses-devel zlib zlib-develyum install gcc -y
yum -y install GeoIP-update
yum install goaccess -y
location ~ /log.html{
alias /usr/local/nginx/html/log.html;
}
access_log /var/log/haoji/8080_access.log main;
goaccess /var/log/haoji/8080_access.log -o /usr/local/nginx/html/log.html --real-time-html --time-format='%H:%M:%S' --date-format='%d/%b/%Y' --log-format=COMBINED