ngx_python

Nginx 模块
授权协议 BSD
开发语言 C/C++
所属分类 服务器软件、 Nginx扩展模块
软件类型 开源软件
地区 国产
投 递 者 周健
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

ngx_python 是为 nginx 嵌入 python 脚本的模块。

环境

- python 2.7.*
- nginx-1.6.3+ 

安装

```sh
git clone https://github.com/rryqszq4/ngx_python.git
wget 'http://nginx.org/download/nginx-1.6.3.tar.gz'
tar -zxvf nginx-1.6.3.tar.gz
cd nginx-1.6.3
export PYTHON_INC=/path/to/python/include/python2.7
export PYTHON_BIN=/path/to/python/bin
./configure --user=www --group=www \
            --prefix=/path/to/nginx \
            --add-module=/path/to/ngx_python
```

摘要

```nginx
user www www;
worker_processes  4;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
    
        location /content_by_python {
            content_by_python "
import ngx
ngx.echo('Hello, ngx_python')
            ";
        }
    }
    }
}
```
 相关资料
  • 模块 模块是任何健壮的应用程序体系结构不可或缺的一部分,特点是有助于保持应用项目的代码单元既能清晰地分离又有组织。 在JavaScript中,实现模块有几个选项,他们包括: 模块化模式 对象表示法 AMD模块 CommonJS 模块 ECMAScript Harmony 模块 我们在书中后面的现代模块化JavaScript设计模式章节中将探讨这些选项中的最后三个。 模块化模式是基于对象的文字部分,

  • 问题内容: 在Github上查看CoffeeScript的源代码时,我注意到大多数(如果不是全部)模块定义如下: 这种模式看起来像是将整个模块包装在一个匿名函数中并调用自身。 这种方法的优点(和缺点)是什么?还有其他方法可以实现相同的目标吗? 问题答案: Harmen的答案是相当不错的,但让我详细说明一下CoffeeScript编译器在何处完成此操作以及原因。 当您使用编译内容时,总会得到如下所示

  • 每个模块都有一个名称,在模块中可以通过语句来找出模块的名称。这在一个场合特别有用——就如前面所提到的,当一个模块被第一次输入的时候,这个模块的主块将被运行。假如我们只想在程序本身被使用的时候运行主块,而在它被别的模块输入的时候不运行主块,我们该怎么做呢?这可以通过模块的__name__属性完成。 使用模块的__name__ 例8.2 使用模块的__name__ #!/usr/bin/python

  • 本文向大家介绍javascript设计模式之module(模块)模式,包括了javascript设计模式之module(模块)模式的使用技巧和注意事项,需要的朋友参考一下 模块是任何强大应用程序中不可或缺的一部分,它通常能帮助我们清晰地分离和组织项目中的代码单元。 js中实现模块的方法:  1.对象字面量表示法  2.Module模式  3.AMD模块  4.CommonJS模块  5.ECMAS

  • 问题内容: 我最近正在读《 学习JavaScript设计模式》 这本书。我没有得到的是模块模式和显示模块模式之间的区别。我觉得他们是同一回事。有人可以举一个例子吗? 问题答案: 至少有三种不同的方法来实现模块模式,但是显示模块模式是唯一具有正式名称的模块模式后代。 基本模块模式 模块模式必须满足以下条件: 私有成员住在封闭中。 公共成员暴露在返回对象中。 但是这个定义有很多歧义。通过以不同方式解决

  • 问题内容: 我想嘲笑。但是,当我运行以下代码时,该模拟被完全忽略了,我不确定为什么 测试代码: 模块代码: 问题答案: 您没有在正确的位置打补丁。您在定义的地方打补丁: 您需要修补导入的位置,即在编写此行的“模块代码”中: 即,它应该看起来像: 要获得快速指南,请阅读文档中的部分:修补位置。

  • author: Wuxiaolong 在Python中有一些内置的数据类型,比如int, str, list, tuple, dict等。Python的collections模块在这些内置数据类型的基础上,提供了几个额外的数据类型:namedtuple, defaultdict, deque, Counter, OrderedDict等,其中defaultdict和namedtuple是两个很实用

  • 既然我们对模块模式已经有一些了解了,让我们看一下改进版本 - Christian Heilmann 的启发式模块模式。 启发式模块模式来自于,当Heilmann对这样一个现状的不满,即当我们想要在一个公有方法中调用另外一个公有方法,或者访问公有变量的时候,我们不得不重复主对象的名称。他也不喜欢模块模式中,当想要将某个成员变成公共成员时,修改文字标记的做法。 因此他工作的结果就是一个更新的模式,在这