apache2-mpm-itk is configured on a per-vhost basis, i.e., we don’t have to set any global options, and there’s only one directive we need to set in a vhost, AssignUserId, which takes two parameters, the user name and the group that the vhost will run as.

In this example we will use the default Debian Apache vhost (you can find its configuration in /etc/apache2/sites-available/default) with thedocument root /var/www (if you have different vhosts, please adjust this to your situation), and we want this vhost to run as the user web_test and group web.

If the user and group don’t already exist, we can create them as follows:

#groupadd web

#useradd -s /bin/false -d /home/web_test -m -g web web_test

Then we open our vhost configuration and add the following lines to it:

<IfModule mpm_itk_module>
AssignUserId web_test web

For Example

#vi /etc/apache2/sites-available/default

NameVirtualHost *
<VirtualHost *>
ServerAdmin webmaster@localhost

DocumentRoot /var/www/
<Directory />
Options FollowSymLinks
AllowOverride None
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# This directive allows us to have apache2’s default start page
# in /apache2-default/, but still have / go to the right place
RedirectMatch ^/$ /apache2-default/

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all

ErrorLog /var/log/apache2/error.log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /var/log/apache2/access.log combined
ServerSignature On

Alias /doc/ “/usr/share/doc/”
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from ::1/128

<IfModule mpm_itk_module>
AssignUserId web_test web

Restart Apache server using the following commands

#/etc/init.d/apache2 restart

Post By Editor (2,827 Posts)

Website: →