On 2012-04-17 17:48, John Iliffe wrote:
I am trying to update from 2.2.14 to 2.4.1 and have encountered two
problems.  2.2.14 has been working properly for over 2 years.  Pages are
located on a separate directory starting at /www with subdirectories s1,
s2, etc for different named virtual hosts.  Config file for EACH virtual host
shows document root as /www/s1, /www/s2, etc as relevant.

1.  Apache will start properly but gives a "Not Authorized" message when
any page is to be served.

Log:

[Mon Apr 16 13:02:31.267819 2012] [authz_core:error] [pid 23033:tid
1100290368] [client 192.168.1.1:41839] AH01630: client denied by server
configuration: /www/s2/, referer: http://www.xxxxx.ca/url0001.html
[Mon Apr 16 13:02:38.965404 2012] [authz_core:error] [pid 23033:tid
1110780224] [client 192.168.1.1:41842] AH01630: client denied by server
configuration: /www/s1/, referer: http://www.xxxxxx.ca/url0001.html

A search of the Apache archives suggests that this is a config problem
requiring a<Directory>  entry so I set up:

# Allow the directory where we store the pages -- 2012-04-15
<Directory /www>
   Options FollowSymLinks
   Order Allow,Deny
   Allow from all
</Directory>

AAA configuration has changed completely in 2.4; this is well-documented in the manual. Instead of Allow from all, use "Require all granted"; the Order directive is no longer required.

Refer to http://httpd.apache.org/docs/2.4/howto/auth.html for details.

I tried a number of variations such as putting this in each of the virtual
host containers, putting a /* on the end, including it once before all the
virtual host declarations, etc.

The latter is the correct form if you want to grant access to all content by default.

Still get same problem.
----------------------------------------------------------------------

Second problem:

Many of the pages are written in PHP and I have PHP installed on the server
and used by 2.2.14.  I copied the module libphp5.so into the modules
directory and added a LoadModule directive as follows:

  LoadModule php5_module modules/libphp5.so

(This line has to be commented out to start Apache)

When I try to start up Apache I get the following error:

/usr/apache-2.4.1/bin/apachectl -k start
httpd: Syntax error on line 153 of /usr/apache-2.4.1/conf/httpd.conf:
Cannot load /usr/apache-2.4.1/modules/libphp5.so into server:
/usr/apache-2.4.1/modules/libphp5.so: undefined symbol: unixd_config

What causes this and what is the solution?

Modules are built for a specific apache portable runtime (APR) version; you cannot load an old module into a newer APR release.
This is directly linked to the apxs version used to build the module.
You need to either obtain an updated module from your package repository, or compile the module from source for your apache version.


--
J.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@httpd.apache.org
For additional commands, e-mail: users-h...@httpd.apache.org

Reply via email to