I understand with Nginx you need to install Modules during compile time.
Once modules are installed, how are they updated?
Currently I'm running Nginx on CentOS and Nginx is updated via yum.
Does Yum update Nginx Modules? Does this have to be done manually? Surely you wouldn't have recompile Nginx to update modules that were already complied in?
Actually, you will have to recompile it to update a module that was already compiled in ... otherwise, when you think about it, there is no other way for the module to be updated.
Assuming you have installed Nginx, say Version 1.6.1-1, using Yum, with Version 1 of Module X included and the author releases Version 2 of the module a while later. The maintainers of the repo you got Nginx from would have to recompile Nginx and release as Version 1.6.1-2 before you can get the new module version on Yum. It would still be Nginx Version 1.6.1 and the difference would be the module which is why they often have "-1", "-2" etc.
This only applies to third party modules as the official modules, if updated, would mean a new version of Nginx, 1.6.2 in this example.
You either have to wait for the repo maintainers to release an update or compile it yourself. Many repo maintainers will not update based on this criteria though or at least they will wait until there are a few outstanding modules before updating.
I personally just compile as I need and do not use a repo as I would rather control modules are included or excluded in my installation.