I prefer to disable httpd dynamic module loading on my production server.

I've been using mod_jk linked statically into httpd for quite a long time and it proved to be stable.

Now I would like to add Ruby Passenger (mod_rails/mod_rack) to my httpd.

I wonder if it is possible to link it statically into Apache httpd the same way too? (without producing a huge httpd)

If it is, are there any potential pitfalls, safety or performance concerns having both mod_jk and mod_rails within the same executable?



Dynamic Shared Objects might solve your problem more readily. This not only would allow you to use a statically compiled mod_rails, but also any other compiled module you wish to load as you need.

Essentially once you statically compile the mod_so module, any other statically compiled modules can be added or removed via the LoadModule command in httpd.conf.

Frankly, I'd never recommend compiling several modules into one Apache compile. I haven't noticed any performance pitfalls, but I've definitely noticed the great convenience of not having to recompile everything whenever I want to make a change. I especially appreciated this when testing module versions.

If by safety you mean security, treat security the same as when dealing with Apache and any module in a dynamic setting. You likely have done so already with mod_jk. I'd further think you'd have fewer potential threats since toy with precompiled source files, but honestly, I'm no expert on server security.

  • I don't understand how your DSO suggestion is different from the dynamic setting that you are talking as an alternative. DSO loads modules dynamically, while I want to disable the dynamic loading whatsoever. I am explicitly disabling DSO in my httpd. You're not recommending compiling modules into Apache b/c it's not convenient to make changes, but on production server I haven't made a single change to httpd in about 5 years. I've got development environment for changes. – Oleg Mikheev Nov 26 '11 at 18:51
  • I severely misread your question. The only thing "static" about my suggestion is mod_so. I should stopped to think after typing "Dynamic." – fny Dec 1 '11 at 3:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.