Hi Henri > > Hello Rich, > > Rich wrote: > | Hello > | > | I have installed midgard 1.6.1 on a RHEL3 box (apache info: > Apache/1.3.33 (Unix) Midgard/1.6.1/Repository/MultiLang > | mod_auth_passthrough/1.8 mod_log_bytes/1.2 > mod_bwlimited/1.4 PHP/4.3.9 > FrontPage/5.0.2.2635 mod_ssl/2.8.22 OpenSSL/0.9.7a). > | > | I compiled midgard from source and it seemed to compile and install > ok, but I am getting errors. > | > | When I add the midgard.so extension to the php.ini file and > then call > php from the command line I get the following error: > > AFAIR, Midgard cannot be used from the command line.
That's ok but I would have thought I should still be able to use PHP from the command line for non-midgard stuff? The latest docs for the midgard-php install (http://www.midgard-project.org/documentation/installation/source/midgard-php.html) say that I should add the following line to php.ini: extension=midgard.so I also edited the extension_dir line in PHP.ini so that PHP would find the midgard.so module. extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20020429" ; directory in which the loadable extensions (modules) reside But this breaks PHP - it complains that in midgard.so ap_find_linked_module is an undefined symbol - which it is when I check with nm: [EMAIL PROTECTED] [~]# nm /usr/local/lib/php/extensions/no-debug-non-zts-20020429/midgard.so | grep -i ap_find_linked_module U ap_find_linked_module So I have removed the "extension=midgard.so" line, but will Midgard work without this? If it helps - PHP is version 4.3.9 compiled with support for the following: './configure' '--with-apxs=/usr/local/apache/bin/apxs' '--with-xml' '--enable-bcmath' '--enable-calendar' '--with-curl' '--enable-exif' '--enable-ftp' '--with-gd' '--with-jpeg-dir=/usr/local' '--with-png-dir=/usr' '--with-xpm-dir=/usr/X11R6' '--with-gettext' '--with-imap' '--with-imap-ssl' '--with-kerberos' '--enable-mbstring' '--enable-mbstr-enc-trans' '--enable-mbregex' '--with-mcrypt' '--with-mhash' '--with-mysql' '--with-openssl' '--enable-discard-path' '--with-pear' '--enable-sockets' '--enable-track-vars' '--with-ttf' '--with-freetype-dir=/usr' '--enable-gd-native-ttf' '--enable-versioning' '--enable-wddx' '--with-zip' '--with-zlib' And it looks like midgard.so has found all the libs: [EMAIL PROTECTED] [~]# ldd /usr/local/lib/php/extensions/no-debug-non-zts-20020429/midgard.so libmysqlclient.so.12 => /usr/lib/libmysqlclient.so.12 (0xb7572000) libexpat.so.0 => /usr/lib/libexpat.so.0 (0xb7554000) libpam.so.0 => /lib/libpam.so.0 (0xb754c000) libm.so.6 => /lib/tls/libm.so.6 (0xb752a000) libz.so.1 => /usr/lib/libz.so.1 (0xb751c000) libcrypt.so.1 => /lib/libcrypt.so.1 (0xb74ef000) libglib-1.2.so.0 => /usr/lib/libglib-1.2.so.0 (0xb74c9000) libmidgard.so.7 => /usr/local/lib/libmidgard.so.7 (0xb74ae000) libc.so.6 => /lib/tls/libc.so.6 (0xb7376000) libnsl.so.1 => /lib/libnsl.so.1 (0xb7361000) libnss_files.so.2 => /lib/libnss_files.so.2 (0xb7355000) libnss_dns.so.2 => /lib/libnss_dns.so.2 (0xb7350000) libresolv.so.2 => /lib/libresolv.so.2 (0xb733d000) libdl.so.2 => /lib/libdl.so.2 (0xb733a000) liblaus.so.1 => /lib/liblaus.so.1 (0xb7337000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) > > | /usr/bin/php: relocation error: > /usr/local/lib/php/extensions/no-debug-non-zts-20020429/midgard.so: > undefined symbol: > | ap_find_linked_module > | > | "nm > /usr/local/lib/php/extensions/no-debug-non-zts-20020429/midgard.so > -u" returns loads of undefined symbols including > | ap_find_linked_module > | > | /usr/local/lib/php/extensions/no-debug-non-zts-20020429/midgard.so: > | U add_assoc_double_ex > | U add_assoc_long_ex > | U add_assoc_string_ex > | U add_assoc_stringl_ex > | U add_assoc_zval_ex > | U add_index_string > | U add_next_index_long > | U add_property_long_ex > | U add_property_null_ex > | U add_property_resource_ex > | U add_property_string_ex > | U add_property_stringl_ex > | U add_property_zval_ex > | U ap_find_linked_module > | U ap_log_rerror > | U ap_psprintf > | U ap_pstrdup > | U ap_table_get > | U ap_table_set > | U ap_uuencode > | U _array_init > | U call_user_function > | U compiler_globals > | U compile_string > | U convert_to_boolean > | U convert_to_long > | ... There were about 100 more > | > | When I visit the virtual server in web browser on port 8001 I get a > 403 Forbidden error. The root of the midgard virtual server is > | empty. Should there be any files or symlinks inside the midgard root of the virtual server which I created with datagard? The only file in there is an index.html file which I copied in myself: [EMAIL PROTECTED] [~]# ls /var/local/lib/midgard/vhosts/www.midgard.[my domain]/8001 -la total 12 drwxr-x--- 2 root nobody 4096 Nov 17 18:45 ./ drwxr-x--x 3 root nobody 4096 Nov 17 18:02 ../ -rw-r--r-- 1 root root 3398 Nov 17 18:45 index.html The virtual server itself file seems ok: <VirtualHost www.midgard.[my domain]:8001> ServerName www.midgard.[my domain].net DocumentRoot /var/local/lib/midgard/vhosts/www.midgard.[my domain]/8001 MidgardBlobDir /var/local/lib/midgard/blobs/midgard MidgardEngine on #MidgardRootfile /usr/local/apache/libexec/midgard-root-nommp.php MidgardPageCacheDir /var/local/cache/midgard MidgardRootFile /usr/local/apache/libexec/midgard-root.php MidgardParser UTF-8 MidgardDefaultRealm "Midgard" MidgardDatabase midgard midgard telecaster RLimitCPU 20 60 RLimitMem 67108864 134217728 </VirtualHost> > All permissions seem to be set ok. > | As I said the install from source seemed to go ok and I executed > datagard and created a database and a virtual server with no > | trouble. > > Did you install any packages after db creation? No none at all. Should I install aegir and hope for the best? > > Take a look at the hosts table in your db. You should have > matches in name (as in hostname) and port (as in server port). > I.e. if you have VirtualHost for localhost:80, you should > have the exact same match in the hosts table (with > name=localhost and port=80). Yes this all seems to match. I have a VirtualHost for www.midgard.[my domain] on port 8001. The host table also contains 7 other enties such as devel.aegir-cms.org. Not sure what the other fields (ie root, style and info fields etc.) represent. > > You may also want to try and run midgard-pageresolve (use -h > for help). If you're able to connect to a Web page with > midgard-pageresolve, your Midgard installation is ok - the > problem is most likely in the Apache configuration. Didn't work: [EMAIL PROTECTED] [~]# midgard-pageresolve -h www.midgard.[my domain] -u /midgard/ -d dump.html -c ls -P telecaster Connecting to mysql://midgard:<hidden>@localhost/midgard Resolving host: http://www.midgard.[my domain]:80/midgard/ RESULT: No host record match > > | I did rename a line in httpd.conf that the midgard-apache1-1.6.1 > install had added: it did read "AddModule mod_midgard.c" but I > | changed it to "AddModule midgard-apache1.c" (with quotes) > as could not > find mod_midgard.c > > This is correct, the Midgard Apache module used to be called > mod_midgard. > > | Please help!! Any suggestions would be very welcome at this stage. > | > | > | Rich > | > | > > Cheers! > > ~ //Henri I really appreciate your help with this. Have you any more ideas? Cheers Rich --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
