具体配置如下:
# hello_uwsgi.ini file [uwsgi] # Django-related settings # the base directory (full path) #此处填写项目地址,我的Django项目地址是/home/project/PyCharmProjectscanteenserver chdir = /home/project/PyCharmProjectscanteenserver # Django s wsgi file module = PyCharmProjectscanteenserver.wsgi # process-related settings # master master = true socket = 127.0.0.1:8000 #此处配置的为日志文件存放的地方 daemonize = /home/project/PyCharmProjectscanteenserver/my_uwsgi.log # maximum number of worker processes processes = 4 # ... with appropriate permissions - may be needed # chmod-socket = 664 # clear environment on exit vacuum = true配置完成后,在项目根目录下输入以下命令即可启动uwsgi服务。
uwsgi --ini my_uwsgi.ini 7.安装Nginx服务器Nginx服务器的安装分为yum安装和下载安装文件安装,个人认为yum安装比较方便。
yum -y install nginx如果此命令不行,则按如下配置一下yum源再执行安装:
vim /etc/yum.repos.d/nginx.repo在文件中输入以下内容:
[nginx] name=nginx repo #我这里是centos7所以就是7,其他版本可以对应更改,具体的可以将地址中7以前的部分复制到浏览器中查看 baseurl=http://nginx.org/packages/centos/7/$basearch/ gpgcheck=0 enabled=1通过yum安装的Nginx安装完成之后是默认开启的。接下来开始配置Nginx的配置文件,通过以下命令新建myconf.conf配置文件。
vim /etc/init.d/nginx/conf.d/myconf.conf在配置文件中作如下输入:
#Nginx反向代理服务器,主要功能就是将发送到指定端口的数据转发到相应的服务器中 server { listen 80; # 监听80端口 server_name 118.25.40.2; # 路径前面的url名称,也就是你在浏览器中输入访问这个服务器的网址,比如1.1.1.10 access_log /var/log/nginx/access.log main; # Nginx日志配置 charset utf-8; # Nginx编码 gzip_types text/plain application/x-javascript text/css text/javascript application/x-httpd-php application/json text/json image/jpeg image/gif image/png application/octet-stream; # 支 持压缩的类型 error_page 404 /404.html; # 配置notfound错误页面 error_page 500 502 503 504 /50x.html; # 配置50X错误页面 # 指定项目路径uwsgi,此处配置的就是Nginx和uwsgi之间的代理 location / { # 此处的意思就是配置浏览器访问此处的位置,如果此处为location /aa 那么浏览器访问此处所有的Django url.py文件中的地址前都要加/aa/ include uwsgi_params; # 导入Nginx的模块,这个模块是用来和uWSGI进行通讯的 uwsgi_connect_timeout 30; # 设置连接uWSGI超时时间 uwsgi_pass 127.0.0.1:8000; # 指定uwsgi的sock文件,此处填写要和uwsgi配置文件中的socket后面是一样的 } # 指定静态文件路径,此处指定你的CSS和JS的文件路径,也就是你Django项目中的静态文件夹的地址,配置不好,所有的CSS以及JS效果都看不到 location /static/ { alias /static/; index index.html index.htm; } }该出目录下还有一个default.conf文件,不用管它。启动Nginx服务器时,会自动加载里面的所有配置文件。
8.Nginx和uwsgi服务的查看、启动、重启以及终止查看目前运行的服务:
netstat -ntpl终止运行的服务:
kill pidpid就是你运行netstat -ntpl命令之后出来一行中倒数第二个的PID的值。
启动服务:
#启动uwsgi uwsgi --ini my_uwsgi.ini #不在my_uwsgi.ini文件的目录下运行此命令时,要带上my_uwsgi.ini文件的完整路径 #启动Nginx systemctl start nginx.service #通过yum安装的nginx不想麻烦配置其他启动方式的话,可以使用这个。重启nginx服务:
systemctl restart nginx.service此处会遇到的坑:
在启动nginx服务器的时候会遇到Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.错误:
遇到这个错误不要慌,按照提示输入systemctl status nginx.service命令查看错误日志,比如我的错误日志出来是这样: