精读 Nginx 源码·自动脚本篇(2)设置初始变量脚本 auto/init
- Author: Poechant
- Blog: blog.CSDN.net/Poechant
- Email: zhongchao.ustc#gmail.com (#->@)
- Date: March 4th, 2012
- Copyright © 柳大·Poechant
在configure
中运行完auto/options
脚本后,接着运行auto/init
脚本,其中所做的工作如下。
1 Makefile文件名变量
默认情况下是:
代码如下:
NGX_MAKEFILE=$NGX_OBJS/Makefile
2 源文件名变量
默认情况下是:
代码如下:
NGX_MODULES_C=$NGX_OBJS/ngx_modules.c
3 头文件名变量
默认情况下是:
objs/ngx_auto_headers.h
objs/ngx_auto_config.h
代码如下:
NGX_AUTO_HEADERS_H=$NGX_OBJS/ngx_auto_headers.h
NGX_AUTO_CONFIG_H=$NGX_OBJS/ngx_auto_config.h
4 自动测试文件名与配置错误文件名变量
默认情况下是:
objs/autotest
objs/autoconf.err
代码如下:
NGX_AUTOTEST=$NGX_OBJS/autotest
NGX_AUTOCONF_ERR=$NGX_OBJS/autoconf.err
5 STUBS 相关变量
默认情况下是:
objs/autoconf.err
objs/Makefile
代码如下:
# STUBs
NGX_ERR=$NGX_OBJS/autoconf.err
MAKEFILE=$NGX_OBJS/Makefile
6 PCH 相关变量
代码如下:
NGX_PCH=
NGX_USE_PCH=
7 测试所在环境下"\c"和"-n"
由于 Nginx 支持多种操作系统,比如 Mac OS、Linux、Solaris 等。不同的系统下的 Shell 也小有差别。所以在auto/init
脚本中有如下两个变量:
代码如下:
# check the echo's "-n" option and "\c" capability
if echo "test\c" | grep c >/dev/null; then
if echo -n test | grep n >/dev/null; then
ngx_n=
ngx_c=
else
ngx_n=-n
ngx_c=
fi
else
ngx_n=
ngx_c='\c'
fi
8 创建并写入 Makefile
还有两个 targets,default 执行 build,clean 执行rm -rf Makefile $NGX_OBJS
。
# create Makefile
cat << END > Makefile
default: build
clean:
rm -rf Makefile $NGX_OBJS
-
转载请注明来自“柳大的CSDN博客”:blog.csdn.net/Poechant
-
分享到:
相关推荐
**Nginx 一键安装与自动化脚本** 在IT行业中,服务器配置和管理是一项重要的任务,尤其是在处理Web服务时。Nginx是一款高性能的HTTP和反向代理服务器,以其高效、稳定和轻量级的特性而广受欢迎。本文将详细讨论如何...
vi /etc/init.d/nginx 修改nginx后 chmod +x /etc/init.d/nginx /sbin/chkconfig nginx on sudo /sbin/chkconfig --list nginx /etc/init.d/nginx start
6. **创建启动脚本**:为 Nginx 创建系统服务启动脚本,以便于用 `systemd` 或 `init.d` 方式管理。 7. **启动与检查**:启动 Nginx 并检查其是否成功运行。 **源码安装的优势** 源码安装相比于二进制包安装有以下...
nginx源码包安装后设置开机自启 在 Linux 系统中,源码安装的软件默认无法使用 systemd 管理,而 systemd 是 Linux 系统中最常用的进程管理工具之一。因此,如果需要使用 systemd 管理源码安装的软件,需要手动编写...
通过提供用户友好的界面,用户只需输入Nginx的版本号和部署目录,脚本即可自动完成从依赖库安装到Nginx服务启动的所有步骤。该脚本适用于基于YUM的Linux发行版 功能 记录日志:脚本中的每个关键步骤都会记录到日志中...
Nginx通过配置文件(通常位于`/etc/nginx/nginx.conf`)管理多个站点,每个站点都有自己的配置块,通常称为`server`块。 ### 2. 添加站点脚本的作用 添加站点脚本是为了简化Nginx站点配置过程,避免手动编写配置...
在nginx及模块安装篇中,手册开始进入核心步骤:下载nginx源码包、编译安装,并配置自启动脚本。从源码安装Nginx的第一步是下载对应的源码包,并解压到一个指定的目录。之后,使用./configure命令配合一系列参数来...
本篇文章将详细讲解如何在Windows环境下,使用Visual Studio 2010编译并运行Nginx源码。 **一、环境准备** 在编译Nginx源码前,我们需要确保以下软件已经安装: 1. **Visual Studio 2010**:作为C/C++编译器,...
通常,Nginx的启动脚本位于操作系统的服务管理目录下,如Linux系统中的`/etc/init.d/nginx`或`/usr/local/nginx/sbin/nginx`。这些脚本包含了启动、停止、重启Nginx服务的相关命令,并与系统的服务管理系统(如...
nginx-init-ubuntu, 尝试和 true Nginx 初始化脚本得到增强 发送请求? ! nginx-init-ubuntu状态 当前版本:v3.9.0以前稳定版本 v3.8.0注意:v3.8.0在最近几个月一直稳定,没有问题。 v3.9.0稳定,是新的。电子邮件...
- auto/init:初始化一些关键变量,如NGX_AUTO_HEADERS_H等。 - auto/sources:设置核心模块和平台代码对应的源文件。 - auto/headers:检查系统平台所需的头文件,并输出到ngx_auto_headers.h文件中。 - auto/os/...
Nginx日志自动归档备份shell脚本log
在这个场景中,我们将探讨如何使用Ansible自动化实现Nginx源码的安装过程。 首先,我们需要在控制节点(运行Ansible的主机)上安装Ansible,并配置好库存文件(inventory),该文件列出了所有要管理的目标服务器。...
Nginx 配置文件通常位于 `/etc/nginx/nginx.conf` 或 `/etc/nginx/sites-enabled/` 目录下。你可以根据需要自定义配置来满足特定的服务器需求,例如设置虚拟主机、调整日志记录等。 “工具”可能意味着这个脚本是一...
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/ ``` 这一步是为了方便执行Nginx命令。 #### 七、检查与启动 1. **检查配置文件**: ```bash nginx -t ``` 使用此命令检查Nginx配置文件是否有语法错误...
nginx 自动化安装脚本,下载直接运行安装就可以,还集成了限制国家ip模块
Nginx日志切割脚本
7. **启动和配置**:启动 Nginx 并根据需求进行配置,如 `sudo /usr/local/nginx/sbin/nginx`,然后通过修改 `/usr/local/nginx/conf/nginx.conf` 文件来调整配置。 **3. Nginx 功能与使用** - **Web 服务**:...
### Windows下Nginx Init脚本详解 #### 标题:Windows下Nginx Init脚本示例 #### 描述:Windows环境下Nginx Init脚本示例,包含启动及关闭示例。 #### 标签:Nginx Init脚本 #### 部分内容解读: ```batch REM ...
# config: /usr/local/nginx/conf/nginx.conf # pidfile: /usr/local/nginx/logs/nginx.pid ``` 这部分定义了脚本的基本信息,包括执行环境、作者、服务描述、配置文件路径以及 PID 文件路径。 #### 函数定义 1. ...