我目前已按照 Nginx 网站上的说明安装了 Nginx:
nginx=stable
sudo su -
add-apt-repository ppa:nginx/$nginx
apt-get update
apt-get install
我已经配置了 Nginx,并且它运行良好。现在,我想添加一些自定义模块,例如上传进度模块。此模块的说明说要添加--add-module=path/to/nginx_uploadprogress_module
到您的./configure
命令中。但是,我没有从源代码安装 Nginx。
处理这种情况的最佳方法是什么?是否可以告诉 APT 从源代码编译并将选项传递给./configure
?我可以编译现有安装吗?路径呢——我如何使它们匹配?或者我必须删除 APT 管理版本并重新开始?
答案1
安装 dpkg-dev:
sudo apt-get install dpkg-dev
添加存储库:
sudo add-apt-repository ppa:nginx/stable
编辑/etc/apt/sources.list.d/nginx-stable-lucid.list
,添加 dpkg-src:
deb http://ppa.launchpad.net/nginx/stable/ubuntu lucid main
deb-src http://ppa.launchpad.net/nginx/stable/ubuntu lucid main
注意:(上一步可能已在 Ubuntu >= 12.04 上自动执行 - 另请确保您更改lucid
以反映您的版本)
重新同步包索引文件:
sudo apt-get update
获取来源:
apt-get source nginx
构建依赖项:
sudo apt-get build-dep nginx
编辑 nginx-0.8.54/debian/rules:
config.status.full: config.env.full config.sub config.guess
...
--add-module=path/to/nginx_uploadprogress_module
构建包:
cd nginx-0.8.54 && dpkg-buildpackage -b
安装软件包:
sudo dpkg --install nginx-common_1.2.4-2ubuntu0ppa1~precise_all.deb
sudo dpkg --install nginx-full_1.2.4-2ubuntu0ppa1~precise_amd64.deb
答案2
由于 Debian 中的 squeeze和自从奥内里克在 Ubuntu 中,有一些(就像headers-more-module
我需要的那样)
apt-get install nginx-extras
答案3
如果要添加额外的/(第三方模块),则需要从源代码安装 Nginx。如果通过源代码安装,Nginx 无法用作服务,并且 logrotate 无法为 Nginx 设置。请按照此操作方法安装它并获取通过以下方式获得的所有功能apt-get