LAMP完整编译安装ok
时间:2010-09-26 来源:evan886
用到的软件及下载地址:
httpd-2.2.16.tar.gz http://httpd.apache.org/download.cgi
php-5.2.14.tar.gz http://php.net/downloads.php
mysql-5.0.32.tar.gz http://download.chinaunix.net/download/0008000/7159.shtml 官方下载地址不太好找,所以给个大家好找的地方
以下为php编译时用到的库文件。 在 http://download.chinaunix.net/develop 搜索关键词都能下载到!
zlib-1.2.5.tar.gz
http://www.zlib.net/
libxml2-2.6.23.tar.bz
http://mail.gnome.org/archives/ftp-release-list/2006-January/msg00030.html
libpng-1.2.10.tar.bz2
http://www.libpng.org/pub/png/libpng.html
jpegsrc.v6b.tar.gz
http://download.chinaunix.net/download.php?id=10021&ResourceID=5095
gd-2.0.33.tar.gz
http://download.chinaunix.net/download.php?id=6665&ResourceID=3479
freetype-2.2.1.tar.bz
http://download.chinaunix.net/download/0004000/3295.shtml
curl-7.21.1.tar.gz
http://curl.haxx.se/download.html
=====================================================================
安装前卸载redhat自带的apache ,php, mysql,否则安装的时候会出问题。
php5.0 要求libxml2-2.6.0以上更高的版本,这一解析器提供php5.0 新的XML API
=====================================================================
安装libxml2
tar -zxvf libxml2-2.6.23.tar.gz
cd libxml2-2.6.23
./configure –prefix=/usr/local/libxml2
make
make install
这一步结束时,libxml2被安装在/usr/local/下。
=====================================================================
安装 zlib
tar -zxvf zlib-1.2.5.tar.gz
cd zlib-1.2.5
./configure –prefix=/usr/local/zlib
make
make install
这一步结束时,zlib被安装在/usr/local/zlib下。
=====================================================================
安装 libpng
tar -zvxf llibpng-1.4.3.tar.gz
cd libpng-1.4.3
./configure --prefix=/usr/local/libpng
make
make install
libpng被安装在/usr/local/libpng下
=====================================================================
安装 freetype
tar -jxvf freetype-2.2.1.tar.bz2
cd freetype-2.2.1
./configure --prefix=/usr/local/freetype
make
make install
这一步结束时,freetype被安装在/usr/local/freetype下
=====================================================================
安装 jpeg6
建立目录
mkdir /usr/local/jpeg6
mkdir /usr/local/jpeg6/bin
mkdir /usr/local/jpeg6/lib
mkdir /usr/local/jpeg6/include
mkdir /usr/local/jpeg6/man
mkdir /usr/local/jpeg6/man/man1
tar -zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static
make
make install
注意:这里./configure一定要带–enable-shared参数,不然,不会生成共享库
=====================================================================
安装 gd
tar -zxvf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure --prefix=/usr/local/gd --with-png=/usr/local/lib --with-freetype=/usr/local/freetype --with-jpeg=/usr/local/jpeg6
make && make install
=====================================================================
安装 curl 支持ftp库函数
tar -zxvf curl-7.21.1.tar.gz
cd curl-7.21.1
./configure --prefix=/usr/local/curl
make && make install
=====================================================================
http://httpd.apache.org/download.cgi?Preferred=http%3A%2F%2Fmirror.bjtu.edu.cn%2Fapache%2F
安装 Apache2
以Apache使用php有两种方式:作为动态模块,其在运行状态时可以载入到web服务器, 或者作为静态模块,其可直接编译到web服务器代码中。
对于本文,我们着重于第一种方式。
为了能让Apache2.0模块使php动态载入,Apache服务器必须以动态共享对象(DSO,Dynamic Shared Object)编译。
可以通过传递 –enable-so 参数到 Apache 2
tar -jxvf httpd-2.2.16.tar.bz2
cd httpd-2.2.16
./configure --prefix=/usr/local/apache2 --enable-so
make && make install
//切记要支持Zend Optimizer不可加 --with-mpm=worker 选项这一过程将会设置,编译,以及将服务器安装到/usr/local/下。
启动apache守护进程: /usr/local/apache2/bin/apachectl start (开启 start 关闭 stop 重启 restart)
打开浏览器,输入http://localhost 就能看到一个apache的欢迎页面了,这表示我们已经成功的安装了apache2 。
=====================================================================
安装 Mysql5
groupadd mysql
useradd -g mysql mysql
tar -zxvf mysql-5.0.32.tar.gz
cd mysql-5.0.32
./configure --prefix=/usr/local/mysql --enable-assembler --with-mysqld-ldflags=-all-static --with-extra-charsets=all --with-big-tables --with-charset=utf8 --with-collation=utf8_unicode_ci
make
make install
cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
cd /usr/local/mysql
bin/mysql_install_db --user=mysql
chown -R root .
chgrp -R mysql .
chown -R mysql var
#不然会有错误
启动服务: /usr/local/mysql/share/mysql/mysql.server start (启动start 关闭stop 重启restart)
键入mysql回车就可已看到欢迎界面。
查看mysql 进程 说明我们已成功安装了mysql
ps -ef|grep mysql
顺便改一下密码
cd /usr/local/mysql/bin
./mysqladmin -u root -p password "2240881"
#login
/usr/local/mysql/bin/mysql -u root -p
再改一下mysql最大连接数
vi /etc/my.cnf
在里面添加 max_connections = 1000
:wq!
保存,重启mysql
然后用命令: mysqladmin -uroot -p variables
输入root数据库账号的密码后可看到
| max_connections | 1000 |
说明:
--with-extra-charsets=all 对多语言支持
--with-unix-socket-path=/usr/local/mysql/var/mysql.sock 这个是指定mysql服务启动后。
联机套接字文件所处的位置和文件名,也就是说,如果mysql服务器成功启动后,就能在 /usr/local/mysql/var.采用这一选项,通常会出错,建议不配置用默认的。
默认会在/tmp/mysql.sock. 目录中看到mysql.sock文件。
=====================================================================
安装 php5
tar -zxvf php-5.2.14.tar.gz
cd php-5.2.14
./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/etc --with-libxml-dir=/usr/local/libxml2 --with-zlib-dir=/usr/local/zlib--with-curl=/usr/local/curl --with-gd=/usr/local/gd --with-jpeg-dir=/usr/local/jpeg6 --with-png-dir=/usr/local/libpng --with-freetype-dir=/usr/local/freetype --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-openssl--enable-gd-native-ttf --enable-mbstring --enable-ftp --enable-bcmath--enable-sockets --enable-zip --enable-soap --enable-calendar
make
make install
#php.ini set
cp php.ini-dist /etc/php.ini
vim /etc/php.ini
或者下面的也行
cp php.ini-production /usr/local/php/lib/php.ini
cp php.ini-dist /usr/local/php/lib/php.ini (ubuntu)
=====================================================================
整合apache2和php5
apache 配置文件及目录是: /usr/local/apache2/conf/httpd.conf apache
默认存放主页的位置是: /usr/local/apache2/htdocs
以下是配置文件里面的信息:(有的地方要做修改)
ServerRoot “/usr/local/apache2″ 这是指定apache程序所在的目录,比如日志文件、配置文件等目录。
DocumentRoot “/usr/local/apache2/htdocs” 这个是存放网页的目录这一句应该和DocumentRoot的目录保持一致。
找到 DirectoryIndex index.html 改为 DirectoryIndex index.html index.html.var index.htm index.php
找到 AddType application/x-gzip .gz .tgz
加 AddType application/x-httpd-php .php (注意空格)
AddType application/x-httpd-php-source .phps
添加 AddDefaultCharset utf8 使apache默认支持utf8字符集
保存配置文件就重启apache 的守护进程。
/usr/local/apache2/bin/apachectl restart 注意: 每次更改配置文件。要重启服务。
对存放网页的目录执行:命令chmod 755 目录名 或者 chmod -R 755 目录名
编辑php.ini文件
找到 ;default_charset=”iso-8859-1″
增加一行:default_charset=”utf8″
以上步骤都执行完后。
在/usr/local/apache2/htdocs/里编辑文件进行测试。
写一个phpinfo.php
vim /usr/local/apache2/htdocs/phpinfo.php
在浏览器地址栏中输入: http://localhost/phpinfo.php 出现php说明页面说明安装成功。
=====================================================================
下载ZendOptimizer-3.3.3-linux-glibc21-i386.tar.gz
tar -zxvf ZendOptimizer-3.3.3-linux-glibc21-i386.tar.gz //解压缩文件
cd ZendOptimizer-3.3.3-linux-glibc21-i386 //进入文件夹
./install //开始安装 安装过程将是可视化操作
安装过程中会让你确认 php.ini的放置路径 /etc/php.ini ZendOptimizer会自动往里面写入配置信息并自动备份原配置文件
另外会确认apachectl的路径 /usr/local/apache2/bin/apachectl
安装好后会确认重启apache,配置成功
=====================================================================
#无法载入 mcrypt 扩展,<br />请检查 PHP 配置
http://www.phpmyadmin.net/home_page/downloads.php
安装phpMyAdmin-2.11
tar -zxvf phpMyAdmin-2.11.11-all-languages.tar.gz
cp -r phpMyAdmin-2.11.11 /usr/local/apache2/htdocs
mv phpMyAdmin-2.11.11-all-languages phpmyadmin
cd /usr/local/apache2/htdocs/phpmyadmin/libraries
cp config.default.php ../config.inc.php
cd ..
vim config.inc.php
或者绝对路径的形式
vim /usr/local/apache2/htdocs/phpmyadmin/config.inc.php
注意 :找到phpmyadmin (eg phpmyadmin2.11.11 )文件夹里的/libraries/config.default.php文件(旧版本是根目录下的
config.inc.php文件),。
1、查找 $cfg['PmaAbsoluteUri']
修改为你将上传到空间的phpMyAdmin的网址
如:$cfg['PmaAbsoluteUri'] = 'http://www.piaoyi.org/phpmyadmin/';
这里因为我是本地调试,我改为$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin/';
注意:不要漏掉最后的反斜杠/和开头的http。
2、查找 $cfg['Servers'][$i]['host'] = 'localhost';(通常用默认,也有例外,可以不用修改)
3、查找 $cfg['Servers'][$i]['auth_type'] = 'config';
在自己的机子里调试用config;如果在网络上的空间用cookie,这里我们既然在前面已经添加了网址,就
修改成cookie。
我个人建议: 测试用config 无论是本地还是网络上,都建议设置成cookie,安全第一。
同时,当auth_type这个值设置为cookie后,还有一个地方需要作出相应的修改:
$cfg['blowfish_secret'] = '';
改成:$cfg['blowfish_secret'] = 'www.1.org';
这里的www.1.org自己随便定义,不超过46个字符。如果这个地方留空,将会出现上文提到的第2个
错误:“配置文件现在需要绝密的短语密码(blowfish_secret)”。
6、查找 $cfg['Servers'][$i]['user'] = 'root'; // MySQL user(用户名,自己机里用root;在
网上一般为你的ftp用户名,虚拟主机提供商会告诉你的;一般不要修改)
7、查找 $cfg['Servers'][$i]['password'] = '2240881'; // MySQL password (2240881修改成连
接你的MYSQL数据库的用户密码)
8、查找 $cfg['DefaultLang'] = 'zh'; (这里是选择语言,zh代表简体中文的意思) 还有 $cfg
['DefaultCharset'] = 'utf8';(修改默认编码为国标)
=================================
问题: phpmyadmin报错 Notice: Undefined index: mysqlhost in \”””
解决: 修改php.ini 中的 error_reporting = E_ALL & ~E_NOTICE
httpd-2.2.16.tar.gz http://httpd.apache.org/download.cgi
php-5.2.14.tar.gz http://php.net/downloads.php
mysql-5.0.32.tar.gz http://download.chinaunix.net/download/0008000/7159.shtml 官方下载地址不太好找,所以给个大家好找的地方
以下为php编译时用到的库文件。 在 http://download.chinaunix.net/develop 搜索关键词都能下载到!
zlib-1.2.5.tar.gz
http://www.zlib.net/
libxml2-2.6.23.tar.bz
http://mail.gnome.org/archives/ftp-release-list/2006-January/msg00030.html
libpng-1.2.10.tar.bz2
http://www.libpng.org/pub/png/libpng.html
jpegsrc.v6b.tar.gz
http://download.chinaunix.net/download.php?id=10021&ResourceID=5095
gd-2.0.33.tar.gz
http://download.chinaunix.net/download.php?id=6665&ResourceID=3479
freetype-2.2.1.tar.bz
http://download.chinaunix.net/download/0004000/3295.shtml
curl-7.21.1.tar.gz
http://curl.haxx.se/download.html
=====================================================================
安装前卸载redhat自带的apache ,php, mysql,否则安装的时候会出问题。
php5.0 要求libxml2-2.6.0以上更高的版本,这一解析器提供php5.0 新的XML API
=====================================================================
安装libxml2
tar -zxvf libxml2-2.6.23.tar.gz
cd libxml2-2.6.23
./configure –prefix=/usr/local/libxml2
make
make install
这一步结束时,libxml2被安装在/usr/local/下。
=====================================================================
安装 zlib
tar -zxvf zlib-1.2.5.tar.gz
cd zlib-1.2.5
./configure –prefix=/usr/local/zlib
make
make install
这一步结束时,zlib被安装在/usr/local/zlib下。
=====================================================================
安装 libpng
tar -zvxf llibpng-1.4.3.tar.gz
cd libpng-1.4.3
./configure --prefix=/usr/local/libpng
make
make install
libpng被安装在/usr/local/libpng下
=====================================================================
安装 freetype
tar -jxvf freetype-2.2.1.tar.bz2
cd freetype-2.2.1
./configure --prefix=/usr/local/freetype
make
make install
这一步结束时,freetype被安装在/usr/local/freetype下
=====================================================================
安装 jpeg6
建立目录
mkdir /usr/local/jpeg6
mkdir /usr/local/jpeg6/bin
mkdir /usr/local/jpeg6/lib
mkdir /usr/local/jpeg6/include
mkdir /usr/local/jpeg6/man
mkdir /usr/local/jpeg6/man/man1
tar -zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static
make
make install
注意:这里./configure一定要带–enable-shared参数,不然,不会生成共享库
=====================================================================
安装 gd
tar -zxvf gd-2.0.33.tar.gz
cd gd-2.0.33
./configure --prefix=/usr/local/gd --with-png=/usr/local/lib --with-freetype=/usr/local/freetype --with-jpeg=/usr/local/jpeg6
make && make install
=====================================================================
安装 curl 支持ftp库函数
tar -zxvf curl-7.21.1.tar.gz
cd curl-7.21.1
./configure --prefix=/usr/local/curl
make && make install
=====================================================================
http://httpd.apache.org/download.cgi?Preferred=http%3A%2F%2Fmirror.bjtu.edu.cn%2Fapache%2F
安装 Apache2
以Apache使用php有两种方式:作为动态模块,其在运行状态时可以载入到web服务器, 或者作为静态模块,其可直接编译到web服务器代码中。
对于本文,我们着重于第一种方式。
为了能让Apache2.0模块使php动态载入,Apache服务器必须以动态共享对象(DSO,Dynamic Shared Object)编译。
可以通过传递 –enable-so 参数到 Apache 2
tar -jxvf httpd-2.2.16.tar.bz2
cd httpd-2.2.16
./configure --prefix=/usr/local/apache2 --enable-so
make && make install
//切记要支持Zend Optimizer不可加 --with-mpm=worker 选项这一过程将会设置,编译,以及将服务器安装到/usr/local/下。
启动apache守护进程: /usr/local/apache2/bin/apachectl start (开启 start 关闭 stop 重启 restart)
打开浏览器,输入http://localhost 就能看到一个apache的欢迎页面了,这表示我们已经成功的安装了apache2 。
=====================================================================
安装 Mysql5
groupadd mysql
useradd -g mysql mysql
tar -zxvf mysql-5.0.32.tar.gz
cd mysql-5.0.32
./configure --prefix=/usr/local/mysql --enable-assembler --with-mysqld-ldflags=-all-static --with-extra-charsets=all --with-big-tables --with-charset=utf8 --with-collation=utf8_unicode_ci
make
make install
cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
cd /usr/local/mysql
bin/mysql_install_db --user=mysql
chown -R root .
chgrp -R mysql .
chown -R mysql var
#不然会有错误
启动服务: /usr/local/mysql/share/mysql/mysql.server start (启动start 关闭stop 重启restart)
键入mysql回车就可已看到欢迎界面。
查看mysql 进程 说明我们已成功安装了mysql
ps -ef|grep mysql
顺便改一下密码
cd /usr/local/mysql/bin
./mysqladmin -u root -p password "2240881"
#login
/usr/local/mysql/bin/mysql -u root -p
再改一下mysql最大连接数
vi /etc/my.cnf
在里面添加 max_connections = 1000
:wq!
保存,重启mysql
然后用命令: mysqladmin -uroot -p variables
输入root数据库账号的密码后可看到
| max_connections | 1000 |
说明:
--with-extra-charsets=all 对多语言支持
--with-unix-socket-path=/usr/local/mysql/var/mysql.sock 这个是指定mysql服务启动后。
联机套接字文件所处的位置和文件名,也就是说,如果mysql服务器成功启动后,就能在 /usr/local/mysql/var.采用这一选项,通常会出错,建议不配置用默认的。
默认会在/tmp/mysql.sock. 目录中看到mysql.sock文件。
=====================================================================
安装 php5
tar -zxvf php-5.2.14.tar.gz
cd php-5.2.14
./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/etc --with-libxml-dir=/usr/local/libxml2 --with-zlib-dir=/usr/local/zlib--with-curl=/usr/local/curl --with-gd=/usr/local/gd --with-jpeg-dir=/usr/local/jpeg6 --with-png-dir=/usr/local/libpng --with-freetype-dir=/usr/local/freetype --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-openssl--enable-gd-native-ttf --enable-mbstring --enable-ftp --enable-bcmath--enable-sockets --enable-zip --enable-soap --enable-calendar
make
make install
#php.ini set
cp php.ini-dist /etc/php.ini
vim /etc/php.ini
或者下面的也行
cp php.ini-production /usr/local/php/lib/php.ini
cp php.ini-dist /usr/local/php/lib/php.ini (ubuntu)
=====================================================================
整合apache2和php5
apache 配置文件及目录是: /usr/local/apache2/conf/httpd.conf apache
默认存放主页的位置是: /usr/local/apache2/htdocs
以下是配置文件里面的信息:(有的地方要做修改)
ServerRoot “/usr/local/apache2″ 这是指定apache程序所在的目录,比如日志文件、配置文件等目录。
DocumentRoot “/usr/local/apache2/htdocs” 这个是存放网页的目录这一句应该和DocumentRoot的目录保持一致。
找到 DirectoryIndex index.html 改为 DirectoryIndex index.html index.html.var index.htm index.php
找到 AddType application/x-gzip .gz .tgz
加 AddType application/x-httpd-php .php (注意空格)
AddType application/x-httpd-php-source .phps
添加 AddDefaultCharset utf8 使apache默认支持utf8字符集
保存配置文件就重启apache 的守护进程。
/usr/local/apache2/bin/apachectl restart 注意: 每次更改配置文件。要重启服务。
对存放网页的目录执行:命令chmod 755 目录名 或者 chmod -R 755 目录名
编辑php.ini文件
找到 ;default_charset=”iso-8859-1″
增加一行:default_charset=”utf8″
以上步骤都执行完后。
在/usr/local/apache2/htdocs/里编辑文件进行测试。
写一个phpinfo.php
vim /usr/local/apache2/htdocs/phpinfo.php
在浏览器地址栏中输入: http://localhost/phpinfo.php 出现php说明页面说明安装成功。
=====================================================================
下载ZendOptimizer-3.3.3-linux-glibc21-i386.tar.gz
tar -zxvf ZendOptimizer-3.3.3-linux-glibc21-i386.tar.gz //解压缩文件
cd ZendOptimizer-3.3.3-linux-glibc21-i386 //进入文件夹
./install //开始安装 安装过程将是可视化操作
安装过程中会让你确认 php.ini的放置路径 /etc/php.ini ZendOptimizer会自动往里面写入配置信息并自动备份原配置文件
另外会确认apachectl的路径 /usr/local/apache2/bin/apachectl
安装好后会确认重启apache,配置成功
=====================================================================
#无法载入 mcrypt 扩展,<br />请检查 PHP 配置
http://www.phpmyadmin.net/home_page/downloads.php
安装phpMyAdmin-2.11
tar -zxvf phpMyAdmin-2.11.11-all-languages.tar.gz
cp -r phpMyAdmin-2.11.11 /usr/local/apache2/htdocs
mv phpMyAdmin-2.11.11-all-languages phpmyadmin
cd /usr/local/apache2/htdocs/phpmyadmin/libraries
cp config.default.php ../config.inc.php
cd ..
vim config.inc.php
或者绝对路径的形式
vim /usr/local/apache2/htdocs/phpmyadmin/config.inc.php
注意 :找到phpmyadmin (eg phpmyadmin2.11.11 )文件夹里的/libraries/config.default.php文件(旧版本是根目录下的
config.inc.php文件),。
1、查找 $cfg['PmaAbsoluteUri']
修改为你将上传到空间的phpMyAdmin的网址
如:$cfg['PmaAbsoluteUri'] = 'http://www.piaoyi.org/phpmyadmin/';
这里因为我是本地调试,我改为$cfg['PmaAbsoluteUri'] = 'http://localhost/phpmyadmin/';
注意:不要漏掉最后的反斜杠/和开头的http。
2、查找 $cfg['Servers'][$i]['host'] = 'localhost';(通常用默认,也有例外,可以不用修改)
3、查找 $cfg['Servers'][$i]['auth_type'] = 'config';
在自己的机子里调试用config;如果在网络上的空间用cookie,这里我们既然在前面已经添加了网址,就
修改成cookie。
我个人建议: 测试用config 无论是本地还是网络上,都建议设置成cookie,安全第一。
同时,当auth_type这个值设置为cookie后,还有一个地方需要作出相应的修改:
$cfg['blowfish_secret'] = '';
改成:$cfg['blowfish_secret'] = 'www.1.org';
这里的www.1.org自己随便定义,不超过46个字符。如果这个地方留空,将会出现上文提到的第2个
错误:“配置文件现在需要绝密的短语密码(blowfish_secret)”。
6、查找 $cfg['Servers'][$i]['user'] = 'root'; // MySQL user(用户名,自己机里用root;在
网上一般为你的ftp用户名,虚拟主机提供商会告诉你的;一般不要修改)
7、查找 $cfg['Servers'][$i]['password'] = '2240881'; // MySQL password (2240881修改成连
接你的MYSQL数据库的用户密码)
8、查找 $cfg['DefaultLang'] = 'zh'; (这里是选择语言,zh代表简体中文的意思) 还有 $cfg
['DefaultCharset'] = 'utf8';(修改默认编码为国标)
=================================
问题: phpmyadmin报错 Notice: Undefined index: mysqlhost in \”””
解决: 修改php.ini 中的 error_reporting = E_ALL & ~E_NOTICE
相关阅读 更多 +