I currently have Nginx installed via the instructions on the Nginx site:
nginx=stable
sudo su -
add-apt-repository ppa:nginx/$nginx
apt-get update
apt-get install
I have configured Nginx and it has been running great for a little while. Now, I want to add some custom modules--say, the Upload Progress Module. The instructions for this module say to add --add-module=path/to/nginx_uploadprogress_module
to your ./configure
command. However, I did not install Nginx from source.
What is the best way to handle this situation? Is it possible to tell APT to compile from source and pass options to ./configure
? Can I compile over the existing installation? What about paths--how do I make them match? Or do I have to remove the APT managed version and start over?
Install dpkg-dev:
Add repository:
Edit
/etc/apt/sources.list.d/nginx-stable-lucid.list
, add dpkg-src:note: (the previous step may have already been automatically performed on Ubuntu >= 12.04 - also make sure that you change
lucid
to reflect your version)Resynchronize the package index files:
Get sources:
Build dependencies:
Edit nginx-0.8.54/debian/rules:
Build package:
Install packages:
Since squeeze in Debian and since oneric in Ubuntu, there are some (like
headers-more-module
I needed) inInstalling Nginx from source is necessary if you want to add extra/(third party module) to it. If installed via source the Nginx can't be used as a service and logrotate doesn't gets setup for Nginx. Follow this method to get it installed with all functionalities which you get from installing via
apt-get
Sweet article that can be read here will explain the detailed information on compiling modules into nginx. Basically you need to recompile the nginx each time you want to install a module.
Also similar to this method will also work.