本站提供最佳java 虚拟机源码服务,欢迎转载和分享。

【cms 网站源码】【源码时代成立】【源码安装更好】nginx 源码注释

2024-11-30 02:47:46 来源:逆市红副图指标源码 分类:休闲

1.树莓派4B 64bit 8GB 启动配置(换源/Miniconda/SSH/Xrdp远程桌面/仪表盘/固件更新)
2.django如何启动服务器(部署django到服务器)
3.LNMP LNMPA 504 Gateway Time-out错误解决方法
4.如何安装nginx

nginx 源码注释

树莓派4B 64bit 8GB 启动配置(换源/Miniconda/SSH/Xrdp远程桌面/仪表盘/固件更新)

       树莓派4B bit 8GB 启动配置分为以下几个关键步骤:更换源、码注安装SSH、码注Xrdp远程桌面、码注备份、码注进阶配置安装仪表盘、码注安装php7.4和nginx、码注cms 网站源码安装pi-dashboard、码注检查EEPROM固件、码注安装GPIO Zero Python、码注基于MiniConda配置Python虚拟环境、码注添加环境变量、码注创建虚拟环境、码注换源以及安全关机、码注重启。码注

       首先,码注注释掉所有源,源码时代成立替换为国内源,执行Ctrl+O+回车保存,Ctrl+X退出。进行完整更新。

       配置SSH部分,设置静态IP,添加相关配置到xorg.conf文件中,保存后重启。

       使用Xrdp实现远程桌面,输入你的ip地址、账号和密码即可。

       进行备份,全备份参考网上教程,部分备份需要先检查剩余空间是否足够。

       安装仪表盘并配置php7.4和nginx,源码安装更好访问mand_line() 通过命令行参数,创建一个管理类。然后运行他的 execute() 。

        如果设置了reload,将会在启动前先 check_errors 。

       check_errors() 是个闭包,所以上文结尾是 (django.setup)() 。

        直接看最后一句 settings.INSTALLED_APPS 。从settings中抓取app

        注意,这个settings还不是我们项目中的settings.py。而是一个对象,位于 django\conf\__init__.py

        这是个Settings类的懒加载封装类,直到 __getattr__ 取值时才开始初始化。然后从Settings类的实例中取值。且会讲该值赋值到自己的linux上传源码 __dict__ 上(下次会直接在自己身上找到,因为 __getattr__ 优先级较低)

       为了方便debug,我们直接写个run.py。不用命令行的方式。

        项目下建个run.py,模拟runserver命令

       debug抓一下setting_module

        回到 setup() 中的最后一句 apps.populate(settings.INSTALLED_APPS)

        开始看 apps.populate()

        首先看这段

        这些App最后都会封装成为AppConfig。且会装载到 self.app_configs 字典中

        随后,分别调用每个appConfig的 import_models() 和 ready() 方法。

       App的装载部分大体如此

        为了方便debug我们改写下最后一句

        res的类型是Command django.contrib.staticfiles.management.commands.runserver.Command object at 0xEDA0

        重点是第二句,让我们跳到 run_from_argv() 方法,这里对参数进行了若干处理。

        用pycharm点这里的handle会进入基类的方法,无法得到正确的走向。实际上子类Commond重写了这个方法。

        这里分为两种情况,如果是陌聊源码reload重载时,会直接执行 inner_run() ,而项目启动需要先执行其他逻辑。

       django 项目启动时,实际上会启动两次,如果我们在项目入口(manage.py)中设置个print,会发现它会打印两次。

        第一次启动时, DJANGO_AUTORELOAD_ENV 为None,无法进入启动逻辑。会进入 restart_with_reloader() 。

        在这里会将 DJANGO_AUTORELOAD_ENV 置为True,随后重启。

        第二次时,可以进入启动逻辑了。

       这里创建了一个django主线程,将 inner_run() 传入。

        随后本线程通过 reloader.run(django_main_thread) ,创建一个轮询守护进程。

        我们接下来看django的主线程 inner_run() 。

       当我们看到wsgi时,django负责的启动逻辑,就此结束了。接下来的工作交由wsgi服务器了

        这相当于我们之前在fastapi中说到的,将fastapi的app交由asgi服务器。(asgi也是django提出来的,两者本质同源)

        那么这个wsgi是从哪来的?让我们来稍微回溯下

        这个settings是一个对象,在之前的操作中已经从 settings.py 配置文件中获得了自身的属性。所以我们只需要去 settings.py 配置文件中寻找。

        我们来寻找这个 get_wsgi_application() 。

        它会再次调用 setup() ,重要的是,返回一个 WSGIHandler 类的实例。

        这就是wsgiapp本身。

       load_middleware() 为构建中间件堆栈,这也是wsgiapp获取setting信息的唯一途径。导入settings.py,生成中间件堆栈。

        如果看过我之前那篇fastapi源码的,应该对中间件堆栈不陌生。

        app入口→中间件堆栈→路由→路由节点→endpoint

        所以,wsgiapp就此构建完毕,服务器传入请求至app入口,即可经过中间件到达路由进行分发。

       django如何启动服务器的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于部署django到服务器、django如何启动服务器的信息别忘了在本站进行查找喔。

LNMP LNMPA Gateway Time-out错误解决方法

       systems的VPS放那里很久没用,刚好W2被停了一些时日,实在无聊,想把美女还是放在上面,所以,直接卡擦重装了systems的VPS的系统,$刀的小内存,自然不弄面板了,直接LNMP,结果出现了意想不到的问题。

       VPS安装LNMPA一路比较顺利,貌似时间比较长,花了2小时左右(哎,够郁闷的,晚点写个systems$/年VPS的评测吧),下载源码,解压都不错,安装dedecms,完全OK。这个源码,是别人提供的,上传空间需要安装后再还原下数据,问题就在还原数据的时候出现了,每次均很快提示: Gateway Time-out!

       因为后台要还原的数据文件很多,我发现,前面比较小的没问题,问题总是出现在恢复某个大的数据库文件上,首先想到可能是php执行时间问题,打开/usr/local/php/etc/,编辑php.ini文件:

       max_execution_time 设置为0(或者高于目前值的数值)

       重启过LNMP之后,忐忑的重新还原数据,OH,仍然,头疼,继续搜索解决方法。

       编辑:/usr/local/apache/conf/extra/下的/softdown/.htm

       nginx

       windows安装配置方法

       ç¬¬ä¸€æ­¥ã€å®‰è£…方法

       ä¸€ã€ä¸‹è½½å¥½åŽï¼ŒæŠŠnginx

       windows版软件解压到c盘根目录。

       äºŒã€åŒå‡»nginx.exe图标,可见黑窗口一闪而过,启动完毕。

       ä¸‰ã€æŒ‰ä¸‹win+R快捷键,输入cmd打开命令行。

       å››ã€å‘½ä»¤è¡Œåˆ°nginx目录,输入nginx启动。(注,此方式命令行窗口无任何提示,且被锁定)

       äº”、打开浏览器,输入http://.0.0.1,如果看到下图片则安装成功。

       å…­ã€ä»¥åŽå¯åŠ¨è½¯ä»¶ç›´æŽ¥åŒå‡»å›¾æ ‡å³å¯ã€‚

       ä¸ƒã€å¯åŠ¨åŽï¼Œé»˜è®¤æƒ…况下(无修改配置),可见到有两个nginx的进程,一个是master

       process,一个是worker

       processes测试。

       ç¬¬äºŒæ­¥ã€é…ç½®æ–¹æ³•

       é…ç½®ç›®æ ‡ï¼šèƒ½æ­£å¸¸è¿è¡ŒPHP脚本程序

       å¤§éƒ¨åˆ†æƒ…况下,我们需要修改的配置文件只有一个,那就是nginx.conf,该文件位于conf目录下。具体配置项目为:

       1.

       server_tokens

       off;

       å‡ºäºŽå®‰å…¨æ–¹é¢çš„考虑,最好是隐藏nginx版本号信息

       2.

       listen

       ;

       ä¸ºç›‘听端口,根据需要可以填写其它端口号

       3.

       server_name

       localhost;

       localhost为服务器访问名称,也就是我们在浏览器里输入的那个url地址

       4.

       charset

       utf-8;

       å­—符集编码

       5.

       å·¥ä½œç›®å½•

       å°†å¦‚下配置

       ä¿®æ”¹ä¸ºï¼š

       root

       å®šä¹‰äº†å·¥ä½œç©ºé—´ï¼Œä¹Ÿå°±æ˜¯æˆ‘们php项目所在的目录。

       åŠ å…¥index.php是为了让nginx能够识别php脚本,否则,在访问php文件时,会出现直接下载的情况。

       6.

       æ•´åˆphp

       å°†location

       ~

       \.php配置部分的注释全部去掉,最终配置如下:

       æ³¨æ„è¿™é‡Œé¢çš„$document_root变量,它对应的内容就是root参数值,如果我们没有定义root参数或者把root注释掉,在访问php的时候,页面上就会出现No

       input

       file

       specified.提示。

       7.

       å¯åŠ¨php-cgi

       æ‰“å¼€cmd命令窗口,切换到php的安装目录,执行php-cgi

       -b

       .0.0.1:,即可启动php-cgi,启动完成后,cmd窗口切勿关闭,否则php-cgi也会被关掉的。

       ç‰¹åˆ«æé†’:只有在开启php-cgi的情况下,nginx才能正常访问php。

       8.

       é‡å¯nginx

       æ‰“å¼€cmd命令窗口,切换到nginx所在目录,执行nginx

       -s

       reload即可重启nginx。其它相关nginx相关命令如下:

       å¯åŠ¨ï¼šstart

       nginx

       åœæ­¢ï¼šnginx

       -s

       stop

       é€€å‡ºï¼šnginx

       -s

       quit

【本文网址:http://0553.net.cn/html/71f625293676.html 欢迎转载】

copyright © 2016 powered by 皮皮网   sitemap