Difference between revisions of "LAMP"
(→External links) |
|||
Line 79: | Line 79: | ||
*[http://www.novell.com/coolsolutions/feature/595.html Installing Apache, PHP, and MySQL on SUSE Linux Professional] | *[http://www.novell.com/coolsolutions/feature/595.html Installing Apache, PHP, and MySQL on SUSE Linux Professional] | ||
*[http://httpd.apache.org/docs/2.0/howto/public_html.html Per-user web directories] (e.g., <code>/home/*/public_html</code>) | *[http://httpd.apache.org/docs/2.0/howto/public_html.html Per-user web directories] (e.g., <code>/home/*/public_html</code>) | ||
+ | *[http://www.astahost.com/info.php/apaches-userdir-very-own-cgi-bin_t3698.html Apache's Userdir With Very Own Cgi-bin - the non-virtualhost way] | ||
*[http://apachegrep.sourceforge.net/ apachegrep] | *[http://apachegrep.sourceforge.net/ apachegrep] | ||
[[Category:Technical and Specialized Skills]] | [[Category:Technical and Specialized Skills]] |
Revision as of 01:53, 23 August 2007
LAMP usually refers to the following open source configuration:
In this article, I will only consider PHP for LAMP.
Contents
Setting up a LAMP Server
This section will only consider setting up a LAMP Server for SuSE Linux (tested on version 10.1) and with a 64-bit CPU / x86_64 (tested on a Pentium D processor). Most of it will be the same for a 32-bit system.
Installing SuSE Linux
Note: Tested on version 10.1
under construction
Installing MySQL
see: MySQL
Installing Apache HTTP Server Version 2
Note: Tested on version 2.2.3
- Step 1: Configuration (note the "rewrite")
./configure --enable-so --enable-mods-shared=expires,ssl,headers,http,info,rewrite
- Step 2: Fix built-in errors before running
make
For some reason, there is a problem with Apache's default Makefile
. It looks for lib64
in the wrong place. It is simple to fix this error.
The problem is found in the following two files: srclib/apr-util/config.status
and srclib/apr-util/Makefile
(note: both files are created after you run ./configure
).
Note: If you perform the following search, you will clearly see the problem:
fgrep APRUTIL_LIBS srclib/apr-util/{config.status,config.log,Makefile}
The output from config.status
will have this
srclib/apr-util/config.status:s,@APRUTIL_LIBS@,-lsqlite3 -lsqlite /usr/lib/libexpat.la ...
instead of this
srclib/apr-util/config.status:s,@APRUTIL_LIBS@,-lsqlite3 -lsqlite /usr/lib64/libexpat.la ...
The same is true for Makefile
.
- Step 3: After fixing the above errors, you should now be able to successfully run
make
make make install # as superuser/root
- Step 4: Test your installation
/usr/local/apache2/bin/apachectl start
Point your browser (i.e., Firefox) to localhost
and you should get an "It works!" or something similar.
/usr/local/apache2/bin/apachectl stop # Important! Make sure you stop the server before installing PHP
Installing PHP 5
Note: Tested on versions 4-5. Also note: the MySQL client library is not bundled with PHP anymore.
- Step 1: Configure and make (note: with my favourite includes)
./configure --with-apxs2=/usr/local/apache2/bin/apxs \ --with-mysql --with-mysqli=/usr/local/mysql/bin/mysql_config \ --with-zlib --with-pear --with-bz2 --enable-calendar \ --enable-exif --with-gd --with-ldap --enable-soap \ --with-xsl --enable-mime-magic --enable-expires \ --enable-headers --enable-ssl --enable-http --enable-info \ --enable-dir --enable-rewrite --enable-so --enable-isapi make make install # as superuser/root
- Step 2: Setup your
php.ini
cp php.ini-dist /usr/local/lib/php.ini
- Step 3: Add the following three lines to your
httpd.conf
(if they are not already present):
LoadModule php5_module modules/libphp5.so AddType application/x-httpd-php .php .phtml AddType application/x-httpd-php-source .phps
- Step 4: Re-start Apache
/etc/init.d/httpd restart
- Step 5: Test PHP with the following (ie,
test.php
in the/usr/local/apache2/htdocs
dir):
<?php phpinfo(); ?>