当前位置: 首页 > news >正文

手机网站建设制作教程视频做印刷的网站

手机网站建设制作教程视频,做印刷的网站,小程序定制开发广州,无忧网该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 这一篇教程#xff0c;我们一起来了解如何在CentOS系统中将Django2的Web项目部署到Nginx服务器。 CentOS系统虽然和Ubuntu系统都是Linux系统#xff0c;但是环境搭建和部署过程还是有一些区别。 整个流程分为几个部分#xff1…该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 这一篇教程我们一起来了解如何在CentOS系统中将Django2的Web项目部署到Nginx服务器。 CentOS系统虽然和Ubuntu系统都是Linux系统但是环境搭建和部署过程还是有一些区别。 整个流程分为几个部分 安装图形桌面与远程登录 安装Python3.6及相关库文件 安装Django2 安装uWSGI 安装Nginx 配置Nginx 使用ini文件启动uWSGI服务器 使用supervisor管理uWSGI服务器 接下来我们就逐一完成这些步骤。 一、安装图形界面 在此之前大家应该先完成CentOS系统的最小化安装。 然后安装我们需要的图形界面和远程登录功能。 因为远程登录需要图形界面支持所以从顺序上先进行图形界面的安装再安装远程登录。 一使用Gnome桌面 GNOME桌面比较耗费系统资源在主机上我们更多是通过命令行进行操作所以我比较倾向于使用面向低性能硬件的Xfce桌面。 如果选择使用Xfce桌面大家可以略过此步骤直接浏览第二部分。 1、安装软件源 执行命令 yum install epel* -y 2、更新软件包 执行命令 yum -y upgrade 3、安装桌面支持 执行命令 yum groupinstall X Window System GNOME Desktop -y 或者 yum -y groupinstall Server with GUI 4、安装xrdp和vnc 执行命令 yum install tigervnc-server xrdp -y 5、启动xrdp服务并且设置为开机启动 执行命令 systemctl start xrdp 二使用Xfce桌面 1、安装软件源 执行命令 yum install epel* -y 2、更新软件包 执行命令 yum -y upgrade 3、安装桌面管理器 执行命令 yum install lightdm -y 4、安装桌面 执行命令 yum groupinstall xfce -y 5、安装远程服务 执行命令 yum install tigervnc-server xrdp -y 6、禁用GDM桌面管理器 执行命令 systemctl disable gdm 7、启用LightDM桌面管理器 执行命令 systemctl enable lightdm 8、配置Xfce为默认桌面 执行命令 vim ~/.Xclients 在打开的文件中写入以下内容 #!/bin/bash XFCE$(which xfce4-session 2/dev/null) exec $XFCE 然后执行命令增加执行权限 chmod x ~/.Xclients 9、启动或重启远程连接服务 执行命令 systemctl start xrdp 或者 systemctl restart xrdp 10、设置远程连接为开机启动 执行命令 systemctl enable xrdp 二、安装Python3.6 CentOS系统自带的是Python2.7.5可以通过输入“python”命令打开。 我们安装了Python3.6之后需要使用命令“python3”启动Python3.6的Shell。 1、安装相关库文件 执行命令 yum -y install zlib* yum -y install gcc yum -y install gcc-c yum -y install openssl yum -y install openssl-devel yum -y install sqlite yum -y install sqlite-devel yum -y install readline readline-devel 2、安装Python3.6与相关库文件 一安装Python3.6 首先创建一个用于保存下载文件的文件夹并赋予权限。 执行命令 mkdir /home/centos/Downloads cd /home/centos/Downloads chmod 777 /home/centos/Downloads 然后下载Python的源码安装包。 下载地址https://www.python.org/downloads/source/ 如果是通过Windows远程登录可以直接复制系统中下载好的Python源码安装包粘贴到CentOS系统的文件夹中。 当然也可以在CentOS系统中通过“wget”命令进行下载。 执行命令 wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz 最后解压缩软件安装包进入解压缩后的目录进行安装。 执行命令 tar xfz Python-3.6.5.tgz cd Python-3.6.5 ./configure --enable-shared --with-sslopenssl make make install 安装完毕后启动Python3.6。 执行命令 python3 此时可能会出现错误。 python3: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory 产生错误的原因是配置文件添加了参数“ --enable-shared ”Python3.6运行时没有加载到文件“libpython3.6m.so.1.0 ”。 实际上我们在执行“make”命令时已经编译了这个文件解决问题的方法就是把编译好的文件复制到特定的目录中。 执行命令: cd /home/centos/Downloads/Python-3.6.5 cp libpython3.6m.so.1.0 /usr/local/lib64/ cp libpython3.6m.so.1.0 /usr/lib/ cp libpython3.6m.so.1.0 /usr/lib64/ 二安装相关库 我们需要安装 “python36-devel”。 这个库没有在系统默认源中所以无法直接通过“yum”命令进行安装。 我们需要先添加一个安装源工具通过下载rpm文件进行安装。 但是直接下载rpm文件进行安装有可能会出现错误。 Warning: user mockbuild does not exist. using root 所以我们需要先安装一个依赖库。 执行命令 yum install mock -y useradd -s /sbin/nologin mockbuild 然后下载“rpmforge”的安装文件。 可以到“http://repoforge.org/use/”进行下载或者通过“wget”命令进行下载。 执行命令 cd /home/centos/Downloads/ wget http://repository.it4i.cz/mirrors/repoforge/redhat/el7/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm 下载完成后进行安装。 执行命令 rpm -ivh rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm 此时可能会出现“NOKEY”的错误是因为“yum”安装了旧版本的“GPG keys”造成的解决办法是导入“gpg”。 执行命令 rpm --import /etc/pki/rpm-gpg/RPM* 接下来就可以安装 “python36-devel”了。 可以先通过命令搜索python3-devel的可用版本。 执行命令 yum search python3 | grep devel 在搜索结果中可以看到一些关于Python3.X的文件名称其中有一个为“Python36”。 执行命令 yum -y install python36-devel 这样就完成了“python36-devel”的安装。 三、安装Django2 Python3.6默认安装后需要使用命令“pip3”安装第三方库。 先安装Django的依赖库“pytz”。 执行命令 pip3 install pytz 然后安装Django。 执行命令 pip3 install django 或者下载Django的安装包放入“Downloads”文件夹后进行安装。 执行命令 cd /home/centos/Downloads/ tar xfz Django-2.0.3.tar.gz cd Django-2.0.3 python3 setup.py install 最后测试一下Python3.6、Django以及Sqlite3是否能够正常使用。 执行命令 python3 import django import sqlite3 四、安装uWSGI 注意不要用“yum install uwsgi”进行安装这样装完会关联系统中的Python2.7并且系统可能会自带uwsgi自带uwsgi的启动项在“/usr/sbin/”中而我们通过“pip3”命令安装uwsgi的启动项在“/usr/local/bin/”目录中。 执行命令 pip3 install uwsgi 如果怕搞混我们可以卸载系统自带的uwsgi然后将启动项复制到“/usr/sbin/”目录中。 执行命令 yum remove uwsgi cp -f /usr/local/bin/uwsgi /usr/sbin/ 或者我们可以将自己安装的uwsgi启动项复制到“/usr/sbin/”目录中时改名为“uwsgi3”。 执行命令 cp -f /usr/local/bin/uwsgi /usr/sbin/uwsgi3 接下来我们测试一下uwsgi是否能够正常工作。 创建一个测试文件“mytest.py”。 执行命令 vi /var/www/mytest.py 写入内容 # !/usr/bin/env python3 # 也可以写成“#!/usr/bin/python3.6”。 def application(env, start_response): start_response(200 OK, [(Content-Type, text/html)]) return [bUWSGI Test...] 代码输入完毕按“ESC”键并键入“:wq”回车保存测试文件。 然后系统中如果没有自带浏览器的话可以安装火狐浏览器。 执行命令 yum install firefox -y 最后进行测试。 执行命令 cd /var/www/ uwsgi --http :8888 --wsgi-file mytest.py 此时通过本机浏览器访问“http://127.0.0.1:8888”或者“http://localhost:8888”进行测试如果页面中显示“UWSGI Test…”字样则说明测试成功uwsgi可以正常工作了。 五、安装Nginx 首先安装Nginx的依赖库“pcre”。 执行命令 yum install -y pcre pcre-devel 然后安装Nginx。 执行命令 yum install -y nginx* 安装完成后就可以通过命令控制Nginx了。 启动命令/usr/sbin/nginx 停止命令/usr/sbin/nginx -s stop 退出命令/usr/sbin/nginx -s quit 重载命令/usr/sbin/nginx -s reload 查询进程ps aux|grep nginx 另外我们还可以设置Nginx为开机自启动。 执行命令 vi /etc/rc.local 在打开的文件中添加一行内容。 /usr/local/nginx/sbin/nginx 六、配置Nginx 创建配置文件并写入内容。 执行命令 vi /etc/nginx/conf.d/MyWeb.conf 写入内容 server { listen 80; server_name http://www.qqtbb.com; charset utf-8; client_max_body_size 5M; location /media { alias /var/www/MyWeb/media; } location /static { alias /var/www/MyWeb/static; } location / { uwsgi_pass 127.0.0.1:8888; include /etc/nginx/uwsgi_params; } } 提示配置内容的详细说明可以参考《Django2Web项目开发入门笔记16》。 内容输入完毕使用时请先清除注释按“ESC”键并键入“:wq”回车保存并让服务器重载配置。 执行命令 nginx -s reload 此时可能发生错误。 nginx: [error] open() “/usr/local/var/run/nginx.pid” failed (2: No such file or directory) 解决方法是找到“nginx.conf”的文件夹目录然后运行“nginx”命令。 例如“nginx.conf”文件在“/etc/nginx/”目录中。 执行命令 nginx -c /etc/nginx/nginx.conf nginx -s reload 如果发生80端口被占用的情况可以先查询占用端口的进程通过“kill”命令关闭进程。 执行命令 lsof -i :80 kill -9 [进程ID] nginx -c /etc/nginx/nginx.conf 七、使用ini文件启动uWSGI服务器 首先使用ini文件启动uWSGI服务器需要安装依赖库。 执行命令 yum install uwsgi-plugin-python3 然后在项目文件夹中创建ini文件。 例如在“/var/www/MyWeb”中存放Web项目文件。 执行命令 vi /var/www/MyWeb/uwsgi.ini 在新建的文件中输入内容。 [uwsgi] socket 127.0.0.1:8888 # 因为要接收来自Nginx的Socket此处必须和Nginx的设置保持一致。 chdir /var/www/MyWeb/ wsgi-file MyWeb/wsgi.py # 完整路径是“/var/www/MyWeb/MyWeb/wsgi.py” processes 3 # 注意此处启用了多进程之后使用supervisor管理uWSGI时需要增加配置项。 threads 5 chmod-socket 664 chown-socket www-data pidfile /var/www/MyWeb/MyWeb.pid vacuum true 提示配置内容的详细说明可以参考《Django2Web项目开发入门笔记16》。 内容输入完毕使用时请先清除注释按“ESC”键并键入“:wq”回车保存然后就可以通过配置文件启动uWSGI服务器了。 启动命令 uwsgi3 --ini /var/www/MyWeb/uwsgi.ini 停止命令 uwsgi3 --stop /var/www/MyWeb/MyWeb.pid 重载配置 uwsgi3 --reload uwsgi.ini 再次强调启动时注意Python版本是否Python3.6并且不要使用系统自带的uwsgi。 此时通过域名就能够访问我们的Web项目了。 八、使用supervisor管理uWSGI服务器 supervisor可以在程序意外关闭时自动重新启动使用它管理uWSGI服务器非常不错。 不过supervisor只支持Python2我们需要通过CentOS自带的Python2.7进行安装。 首先安装“pip”工具。 执行命令 cd /usr/lib/python2.7/site-packages/ easy_install pip 然后安装“supervisor”。 pip install supervisor 接下来进行配置。 执行命令 echo_supervisord_conf /etc/supervisord.conf vi /etc/supervisord.conf 在打开的文件末尾添加内容。 注意语句前面不要有空格。 [program:MyWeb] commanduwsgi --ini /var/www/MyWeb/uwsgi.ini directory/var/www/MyWeb/ startsecs10 stopwaitsecs10 stopasgrouptrue killasgrouptrue autostarttrue autorestarttrue 提示配置内容的详细说明可以参考《Django2Web项目开发入门笔记16》。 这里特别需要注意的是如果“uwsgi.ini”文件中开启了多进程一定要加上下面两句。 stopasgroup true # 用于停止进程组即停止所有通过“uwsgi.ini”配置启动的进程。 killasgroup true # 用于关闭进程组即关闭所有通过“uwsgi.ini”配置启动的进程。 如果不添加这两句supervisorctl命令停止或关闭进程时只会关闭其中1个进程从而导致再次启动或重启uWSGI失败出现类似“MyWeb: ERROR (spawn error)”的错误。 这是因为残留的孤儿进程阻止了新的同类进程的开启。 当我们完成配置文件的修改之后必须重新加载配置文件才能使其生效。 执行命令 supervisorctl reload 最后启动supervisord和uWSGI。 执行命令 /usr/bin/supervisord -c /etc/supervisord.conf 或者 supervisorctl -c /etc/supervisord.conf start MyWeb 此时可能会发生错误。 Error: Another program is already listening on a port that one of our HTTP servers is configured to use. Shut this program down first before starting supervisord. 这是因为supervisord已经启动过我们需要先查询已开启的程序将其关闭。 执行命令 find / -name supervisor.sock unlink /被链接文件的所在路径/supervisor.sock 另外通过“supervisorctl”命令可以方便的管理项目。 启动项目命令supervisorctl start [配置文件中的项目名称] 重启项目命令supervisorctl restart [配置文件中的项目名称] 停止项目命令supervisorctl stop [配置文件中的项目名称] 控制所有项目supervisorctl all
http://www.sadfv.cn/news/65929/

相关文章:

  • 免费网站建设是什么找网站开发需求客户平台
  • 海口网站建设方案做网站编码
  • 固安住房和城乡建设网站福州网站运营
  • 红酒公司网站建设麦田 网站建设
  • 怎么登陆建设银行网站看开户行企业为什么要做手机网站
  • 怎么给网站做短信东莞网站建设 包装材料
  • 杭州制作网站公司wordpress330
  • 做pc网站如何实时预览西安网站制作开发
  • 网站开发员一月多少工资网站 建设文档
  • 普宁17网站一起做淘宝没内容的网站怎么优化
  • 单页网站赚钱百度一下你就知道首页
  • 外贸网站海外推广3个必去网站wordpress 账号图片
  • 永州市网站建设软文台
  • 成都网站建设冠辰西安抖音运营
  • 广州中小企业网站制作微盟登录平台
  • 网站做百度竞价邯郸移动网站建设
  • tomcat 建网站网站定制建设公司
  • 33岁改行做网站建设西安企业网站排名优化工具
  • 重庆没建网站的企业中国网库企业黄页
  • 小榄网站建设公司wordpress首次请求慢
  • 食品网站的建设背景余姚网站建设余姚
  • 镇江网站建设企业做旅游计划上哪个网站
  • 教师在哪些网站可以做兼职国外 设计公司手机网站
  • 个人淘宝客网站有哪些休闲食品网站建设规划书
  • 学校招聘教师网站建设建设部网站防排烟规范
  • 服装设计有哪些网站黄骅港金沙滩门票价格
  • 公司的网站难不难做本机iis发布网站后台管理
  • 电子商务平台如何推广营销网页搜索优化seo
  • 南宁专业网站制作前十排名网架公司运营经验
  • wordpress站点地址没有微信小程序如何做