将django项目部署到CentOs服务器中。

首先,把项目上传到虚拟机中。

scp -r C:\Users\Administrator\Desktop\fresh [email protected]:/home/fresh/

在虚拟环境中运行,确保uwsgi安装好。

pip install uwsgi

验证:

def application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])
    return [b"Hello Django"]
uwsgi --http :8001 --wsgi-file test.py

浏览器正常访问ip+端口,能正常访问,说明安装好了。

如果相应时间过长,则进行以下操作:

#yum install -y python-devel

#easy_install uwsgi

进入虚拟环境,关闭防火墙:

查看防火墙状态:

#systemctl status firewalld.service

关闭防火墙:

#systemctl stop firewalld.service

将django项目部署到CentOs服务器中。_第1张图片

安装nginx:

vi /etc/yum.repos.d/nginx.repo 添加下面内容

[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/x86_64/
gpgcheck=0
enabled=1

gpkcheck=0 表示对从这个源下载的rpm包不进行校验;
enable=1 表示启用这个源。

修改端口号:

vim /etc/nginx/conf.d/default.conf


server {
    listen       8089;
    listen [::]:8089;
    ...
    ...
}

systemctl restart nginx 重启nginx,直接访问http://ip:8089 能看到nginx的欢迎界面即可。

显示界面如下:

将django项目部署到CentOs服务器中。_第2张图片

安装依赖库:

pip freeze > requirements.txt
Django==2.1.2
django-haystack==2.8.1
mysqlclient==1.3.13
pytz==2018.5
uWSGI==2.0.17.1
Whoosh==2.7.4

pip install + 安装包名字即可

settings文件的修改:

将HOST改为本机地址。

python manage.py collectstatic 收集admin静态文件

将django项目部署到CentOs服务器中。_第3张图片

修改uwsgi.ini

在项目文件下新建django_uwsgi.ini文件:

vim django_uwsgi.ini

[uwsgi]
# 通过uwsgi访问django需要配置成http
# 通过nginx请求uwsgi来访问django 需要配置成socket
# 9000 是django的端口号
socket = 0.0.0.0:9000
# web项目根目录
chdir = /home/fresh/
# module指定项目自带的的wsgi配置文件位置
module = fresh.wsgi
# 允许存在主进程
master = true
# 开启进程数量
processes = 3
# 服务器退出时自动清理环境
vacuum = true

 


启动服务:

uwsgi --ini django_uwsgi.ini --buffer-size 32768

如图:

将django项目部署到CentOs服务器中。_第4张图片

配置nginx:

 vi /etc/nginx/conf.d/fresh.conf

server {
        listen       8008;
           location / {
        include /etc/nginx/uwsgi_params;
        uwsgi_pass 127.0.0.1:9000;
    }
    location /static/{
        root /home/fresh/;
  }
}

vi /etc/nginx/nginx.conf

将django项目部署到CentOs服务器中。_第5张图片

重启nginx。

然后重新启动uwsgi。

 uwsgi --ini django_uwsgi.ini --buffer-size 32768

接着在浏览器中输入网址即可,ip是虚拟机的ip。可以通过ifconfig查看。

浏览器打开进去之后没有样式,输入如下命令:

getenforce

setenforce 0

刷新之后即可看到样式。

如果端口被占用,输入命令:

lsof -i:9000           #查看端口占用状态
netstat -lnp| grep 9000    #查看端口占用状态
kill -9 +PID号

 

 

 

 

 

你可能感兴趣的:(框架)