Thursday Sep 17, 2009

Any mod_fcgid users out there?

Recent updates to mod_fcgid are ready to test.

[Read More]

Wednesday Jul 29, 2009

Apache HTTP Server in GlassFish Web Stack 1.5

Now that GlassFish Web Stack 1.5 is available, I thought I'd give a quick list of improvements to Apache (httpd). I'll cover some of these in more detail in later articles.

First, Apache has been updated to 2.2.11, with later security fixes. So while scheduling prevented delivery of the absolute latest version, Web Stack 1.5 includes all security fixes in the current Apache, APR, and APR-Util releases (2.2.12, 1.3.7, and 1.3.8 respectively).

Additionally,

  • The new Web Stack Enterprise Manager provides monitoring support for Apache, in addition to the other server components of Web Stack.
  • The new IPS/pkg(5) delivery allows multiple installs of Apache (and the rest of Web Stack) on a system, including non-root installs. (Existing native packages for administrators continue to be supported.)
  • LDAP authentication over SSL is now supported on Solaris 10, via OpenLDAP. (It was already supported on Red Hat Enterprise Linux.)
  • Exception hooks are now supported via a change to the configure options. Users now have the option to use diagnostic modules like mod_whatkilledus to capture information at the point of a child process crash.
  • mod_sed, a Sun contribution to the next release of Apache, has been backported to the Web Stack Apache 2.2 delivery. mod_sed provides more versatile content filtering relative to mod_substitute.
  • mod_security is now provided.

Wednesday Mar 25, 2009

Hello from ApacheCon Europe 2009

Hello from Amsterdam!  We httpd and APR developers have been busy.

On the APR side, for future APR 2.0, the separate APR-Util package is no more (its features were folded into APR proper) and APR pools now use malloc (similar to old pool debug mode).  The use of malloc can result in better performance with modern heap libraries (this needs analysis!), and watchmalloc/libumem/ElectricFence/etc. can be used with APR apps much more effectively.  (Joe quickly found a longstanding bug in one of the sample apps by linking with ElectricFence.)

An httpd change of great interest to me is the ability to load MPMs as DSOs via the LoadModule directive.

Traditionally you select an MPM on Unix with a configure-time option such as --with-mpm=prefork, --with-mpm=worker, etc.  If you want to have multiple MPMs available you build the complete server for every MPM and switch out httpd executable files to change that.  You can still do that, but now you can also specify --with-mpm=shared on the configure invocation, build the MPMs you want (via apxs right now :( ), and load the desired MPM with LoadModule.

Here is a sample apxs invocation to build the "Simple" MPM.  prefork, worker, and event are similar:

$ cd server/mpm/simple

$ ~/inst/23/bin/apxs -ci -o mod_mpm_simple.la -n mpm_simple_module \\

simple_api.c simple_children.c simple_core.c simple_event.c \\

simple_io.c simple_run.c

Now add something like this to httpd.conf:

<IfDefine WORKER>

loadmodule mpm_worker_module modules/mod_mpm_worker.so

</IfDefine>

<IfDefine EVENT>

loadmodule mpm_event_module modules/mod_mpm_event.so

</IfDefine>

<IfDefine SIMPLE>

loadmodule mpm_simple_module modules/mod_mpm_simple.so

</IfDefine>

<IfDefine !WORKER>

<IfDefine !EVENT>

<IfDefine !SIMPLE>

<IfModule !prefork.c>

loadmodule mpm_prefork_module modules/mod_mpm_prefork.so

</IfModule>

</IfDefine>

</IfDefine>

</IfDefine>

 

Start with

$ apachectl -k start -DEVENT (or -DWORKER or -DSIMPLE)

It defaults to prefork if you omit the -Dmpmname parameter.

 

Friday Mar 06, 2009

Caching Dynamic Content with Apache HTTP Server on OpenSolaris 2008.11

Apache HTTP Server and mod_disk_cache can be used to cache dynamic content, and reduce load on web applications to improve server performance and user response time.




[Read More]
About

Jeff Trawick

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today