简介:许多朋友询问了Django如何调试网站。本文的首席CTO笔记将为您提供详细的答案,以供所有人参考。我希望这对每个人都会有所帮助!让我们一起看看!
当我在PyCharm中开发Django计划时,我仍然对打印日志调试程序的方式感到有些麻烦,并且对研究断点调试的方法的直觉并不直观:
1.打开您的项目,并在菜单栏中查找Run-Edit配置
2.在打开的对话框中选择Python,单击+号码
4.选择Python
5.出现一个新项目,您可以将其重命名为调试,听起来不错
6.选择您网站的管理。脚本参数用于与通常使用命令行相同的命令行。智能同学应该已经发现了,或者您可以配置命令参数,例如迁移(数据库同步)以实现命令以实现命令fasts的操作,保存的手敲门
7.然后在菜单栏中找到rundebug'debug',然后单击
8.运行后,您可以看到服务器在控制台中运行,有一个日志打印
9.稍后再尝试您程序中的观点。当程序运行到断点时,您将被解决。
根据官方网站的指导安装Django
开始本地服务
您可以访问浏览器输入链接
更改代码时,相应的页面将更改。您可以谈论代码调试部分作为页面输出,以便您可以看到执行结果的执行结果
主要参考官方网站指南部分1
1. Python和Django环境建设
(1)下载anaconda3并安装
韦特
SH Anaconda3-2.3.0-Linux-X86_64.SH
输入密钥后,然后提示是否添加环境变量,请输入是。
(2)安装Django
直接pip安装django
安装成功后,您可以创建一个新项目
django-admin startproject demosite
CD Demosite
python manage.py startapp博客
python manage.py迁移
(3)运行django
python manage.py runserver
curl 127.0.0.1:8000如果可以正常访问,则成功安装了Django。
2.安装UWSGI
(1)Centos
YUM安装Zlib-Devel bzip2-devel pcre-deveel openssl-devel ncurses-devel-devel sqlite-devel-devel readline-devel-devel-devel tk-devel
PIP安装UWSGI
UWSGI - Version #View UWSGI版本
(2)test.py
然后,运行UWSGI:
uwsgi-http:8000-wsgi-file test.py
def应用程序(env,start_response):
start_response('200 ok',[('content-type','text/html')]))))))
返回[“ Hello World”]#Python2
#Return [B“ Hello World”]#Python3
(3)Ubuntu可能会犯错:
如果有错误,!没有内部路由支持,可以通过PCRE支持重建!!!
sudo apt-get安装libpcre3 libpcre3-dev
sudo pip卸载uwsgi
sudo apt-fin删除uwsgi
sudo pip安装uwsgi
(4)测试
1)打开下面的URL,Hello World应该显示在浏览器上
如果在HTTPIE模块中安装了卷曲,请使用http
如果显示正确是Hello World,则意味着上述链接未屏蔽
2)测试django
默认情况下,Django新项目的使用将在应用程序应用下生成wsgi.py文件
uwsgi-http:8000-wsgi-file wsgi.py也将直接报告错误
uwsgi-http:8000-wsgi-file appname/wsgi.py.py
打开浏览器输入。如果正确解释了现实,则web client-uwsgi --- django却没有阻碍
3.安装和配置nginx
(1)安装
韦特
TAR XF NGINX-1.9.5.TAR.GZ
CD NGINX-1.9.5
https://www.shouxicto.com/article/configure-prefix =/usr/locar/local/nginx -with-http_status_module -with-with-gzip_module
进行安装
或参考
(2)配置文件
vi/usr/local/nginx/conf/nginx.conf
一般来说,添加服务器是可以的
参考配置如下
用户根;
Worker_Processes 1;
#Error_log logs/error.log;
#Error_log日志/错误。日志通知;
#Error_log logs/error.log信息;
pid logs/nginx.pid;
事件{
使用epoll;
Worker_connections 65535;
}
http {
包括mime.types;
default_type应用程序/八位字 - stream;
#log_format main'$ remote_addr -$ remote_user [$ time_local]“ $请求”'
#'$ status $ body_bytes_sent“ $ http_referr”''
#'“ $ http_user_agent”“ $ http_x_forwardded_for”';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
服务器 {
听8099;
server_name 10.117.52.157;## IP和端口访问室外
access_log/tmp/cms/access.log;
error_log/tmp/cms/error.log;
#Charset KOI8-R;
#access_log logs/host.access.log main;
地点 / {
包括uwsgi_params;
UWSGI_PASS 127.0.0.1:8088;
uwsgi_read_timeout 300;
}
#Error_page 404 /404.html;
#重定向服务器页面到静态页面/50x.html
#
#ERROR_PAGE 500 502 503 504 /regization/500.html;
#location = /registration/500.html {
#根HTML;
#}
位置 /静态 / {
别名/root/cms/cms/static/;
索引index.html index.htm;
}
位置 /媒体 / {
别名/root/cms/cms/media/;
}
}
}
(3)运行并重新启动
/usr/local/nginx/sbin/nginx
开始:nginx开始
重新启动:nginx -s重新加载
4.使用UWSGI的配置文件运行Django
确保NGINX运行后,您可以通过UWSGI.NGINX在最外层接收请求,然后将其自身处理,然后通过套接字端口将其动态交给UWSGI。
配置文件内容如下
[UWSGI]
套接字=:8088#与对应于Nginx相对应的IP一致
chdir的目录=/root/cms/cms #app
模块= cms.wsgi#wsgi.py文件位置
touch-regoad =/root/cms/cms/recoad #restart只需输入命令触摸重新加载文件
过程= 4
线程= 2
daemonize =/tmp/cms/wsgi.log #log文件位置
放入应用程序的第一级
直接运行uwsgi - ini uwsgi.ini
结论:以上是首席CTO注释供大家调试网站的Django相关内容的相关内容。希望它对您有所帮助!如果您解决了问题,请与更多关心此问题的朋友分享?