[afnog] Apache2-PHP5 Installation Issues
Hervey Allen
hervey at nsrc.org
Mon Jul 31 01:09:59 EAT 2006
Stephane Bortzmeyer wrote:
> On Fri, Jul 28, 2006 at 04:27:22AM -0400,
> Hervey Allen <hervey at nsrc.org> wrote
> a message of 38 lines which said:
>
>> I've had to compile php from source several times in order to build
>> dynamic sites. The issue with RPM installed apache and php is that
>> the choices made by the distribution vendor often are not what
>> you'll need for the code you plan on writing.
>
Stephane:
I've responded to your comments out of order. First:
>> Also, remember that the OP is a beginner: he is not used to Unix
>> system administration and, even if you think that recompiling might be
>> useful, it is typically not for the beginner.
>>
I totally agree! Alain, if you are reading this my post was
not directed at you but the list. Actually, Alain, I noted
that you originally installed both "httpd" (Apache I
assume?) and PHP from source. I don't know if your box is
live, or just being set up. But, if you are still having
problems re-installing everything from RPM would definitely
be a good place to start.
The major issue is uninstalling Apache and PHP will be hard
to impossible once they are installed from source. You can
try "make uninstall" for both and see if this works, however
I didn't see this as an option for PHP or Apache. Anyone
else tried this?
>> A last warning: installing things by hand and not by a regular package
>> will make more work for the next upgrade. Recompiling and installing
>> by hand may seem faster but it lays problems for yourself (or your
>> colleagues) in the future.
>>
Again, I agree. It's _really_ painful to deal with
source-installed software under Linux when you want to
remove or upgrade in the future.
OK, so your original question I've put below. I didn't want
to go off on this tangent until I'd made it clear that there
are some serious caveats to installing software outside of
packaging systems under Linux, i.e. from source.
> Can you give specific examples? Because I never had to recompile PHP
> so I'm curious.
>
I've installed RPMs for PHP under Fedora 2, 3 and 4. I was
doing this for sights using LAMP configurations.
I took detailed notes from one box where we needed PHP 4 and
PHP 5 to run on the same box. The final configure looked
like this:
./configure' '--enable-pic' '--with-bz3'
'--with-kerberos=/usr/kerberos/' '--with-openssl'
'--with-png' '--with-regex=system' '--with-zlib'
'--enable-bcmath' '--enable-ftp' '--enable-magic-quotes'
'--enable-track-vars' '--enable-trans-sid' '--enable-yp'
'--with-pear=/usr/share/pear' '--with-mysql=shared,usr'
'--enable-memory-limit' '--enable-calendar' '--enable-dbx'
'--enable-dio' '--enable-mcal' '--with-mysql=/usr/lib/mysql'
'--enable-bcmath' '--enable-force-cgi-redirect'
'--prefix=/usr/local/php5'
The differences from the RPM version were:
Remove --with-apxs=DIR
Add --enable-force-cgi=redirect
Add --prefix=/usr/local/php5
Add --with-mysql=/usr/lib/mysql
Removing --with-apxs ensures that we did not install php5
over php4 and that it installed as a CGI module. I did
this so that we could test php5 alongside php4 for the
moment. The --prefix option makes sure that we did not
overwrite php4 configuration files (we had a fairly
specialized php.ini file). The --with-mysql option was
required as php5 no longer includes(d) MySQL support unless
you specify it explicitly.
and, in the PHP Makefile itself we had to add:
EXTRA_INCLUDES = -I/usr/kerberos/include/
This was because OpenSSL complained that it could not find
krb5.h header file. This was because Kerberos had placed all
their include files in /usr/kerberos/include instead of the
more standard (imho) /usr/include/kerberos directory.
Note that some of these specific issues may have changed or
been corrected since this was done. This is simply one example.
On another box I had to add the
"'--with-pear=/usr/share/pear'" switch for a php 4.x
install. Other switches that can have a major impact on how
your code interacts with your data include, but are not
restricted to:
'--with-regex=system'
'--with-zlib'
'--enable-bcmath'
'--enable-ftp'
'--enable-magic-quotes'
'--enable-track-vars'
'--enable-trans-sid'
Some will, some won't want these enabled, etc., etc... and
the switches change between PHP versions, vendors, distro
versions, etc.
One reason why I like FreeBSD source installs. You can
specify stuff as needed, yet you can still uninstall
reliably. But, MySQL plays so much nicer with Linux that if
you need the speed, then you may feel compelled to choose
LAMP over FAMP.
Cheers,
- Hervey
--
-------------------------------------------------
Hervey Allen Network Startup Resource Center
hervey at nsrc.org GPG Key Fingerprint:
AC08 31CB E453 6C65 2AB3 4EDB CEEB 5A74 C6E5 624F
More information about the afnog
mailing list