lamp平台的搭建总结
linux+apache+mysql+PHP
1.安装mysql-5.1.36
软件获取:
http://dev.mysql.com/downloads/
安装步骤:
tar xvfz mysql-5.1.36.tar.gz
cd mysql-5.1.36
./configure –prefix=/usr/local/mysql \
–with-extra-charsets=all \
–sysconfdir=/usr/local/mysql/etc \
–localstatedir=/var/lib/mysql \
–with-unix-socket-path=/usr/local/mysql/var/mysql.sock \
–with-charset=gbk \
–with-collation=gbk_chinese_ci
(gbk和gbk_chinese_ci的加载可处理中文乱码问题)
make
make install
(注意:虽然在./configure后加上了–localstatedir=/var/lib/mysql但是并未在/var/lib下产生mysql目录,所以我们要在源码包编译安装完成之后先检查一下是否有这个目录,如果没有的话一定要手动创建一个:mkdir /var/lib/mysql)
groupadd mysql
useradd –g mysql -d /home/mysql –s /bin/bash –c “MySQL user” mysql
(为了安全,我们建一个普通用户来初始化数据库,mysql的主目录在/usr/local/var下,而且这个用户是不能登陆服务器的。)
cp /usr/local/mysql/share/mysql/my-large.cnf /etc/my.cnf
cd /usr/local/mysql
./bin/mysql_install_db –user=mysql
(初始化数据库,在/var/lib/mysql下将会产生相应的数据库文件。升级的话不用这步。)
chown -R root:mysql .
chown -R mysql:mysql /var/lib/mysql
/usr/local/mysql/bin/mysqld_safe &
(启动服务器,&表示在后台运行,以后的启动不会再使用这个命令。以后的启动利用/usr/local/mysql/share/mysql/中的启动文件mysql.server启动。)
/usr/local/mysql/bin/mysql –u root –p
(如果没有密码用/usr/local/mysql/bin/mysql)
cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysql
chmod 755 /etc/init.d/mysql
之后可执行 service mysql start或service mysql restart或service mysql stop来启动或停止MySQL服务。/etc/init.d/mysql start也可。
chkconfig mysql on
chkconfig –add mysql
chkconfig –level 345 mysql on
(设置开机自动启动MySQL服务)
查看3306端口是否打开:
netstat -atln
设置MySQL的root密码(非系统的root):
安装后若没有配置过密码,默认密码为空,使用下面命令设置:
/usr/local/mysql/bin/mysqladmin -u root password new-password-for-MySQL-root
若想更新密码,使用下面命令设置:
/usr/local/mysql/bin/mysqladmin -u root -p oldpassword newpassword
运行/usr/local/mysql/bin/mysql -u root -p
输入刚才修改的管理员密码
mysql> exit
Bye
设置MySQL的普通用户密码:
/usr/local/mysql/bin/mysqladmin -u user-name -p oldpassword newpassword
补充:
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
ln -s /usr/local/mysql/include/mysql /usr/include/mysql
(也可以不做这步,大可以在编译其他软件的时候自定义myslq的库文件路径,但这样将库文件链接到默认位置,可以在编译类似PHP、Vpopmail等软件时不指定mysql的库文件地址。)
说明:
./configure –prefix=/usr/local/mysql说明安装路径
–sysconfdir=/etc配置文件路径
–localstatedir=/var/lib/mysql数据库存放路径
2.1安装apache_1.3.41
软件获取:http://httpd.apache.org/
安装步骤:
tar xvfz apache_1.3.14.tar.gz
cd apache_1.3.41
修改src/include/httpd.h 增大最大线程数,将:
#define HARD_SERVER_LIMIT 256
改成:
#define HARD_SERVER_LIMIT 2048
保存退出
./configure \
–prefix=/usr/local/apache \
–enable-module=so \
–enable-module=rewrite \
–enable-shared=max \
–htdocsdir=/var/www
make
make install
启动:
/usr/local/apache/bin/apachectl start
说明:
–prefix=/usr/local/apache说明安装路径
2.2安装httpd-2.2.11
软件获取:http://httpd.apache.org/
安装步骤:
tar xvfz httpd-2.2.11.tar.gz
cd httpd-2.2.11
./configure –prefix=/usr/local/apache2 \
–sysconfdir=/etc/httpd \
–enable-ssl \(如果configure报错,不加这句也可。)
–enable-modules
make
make install
vim /etc/httpd/httpd.conf
将#ServerName www.exapmle.com:80这一行替换为:
ServerName localhost:80
把httpd加入到系统服务中:
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
chmod 755 /etc/init.d/ httpd
之后可执行service httpd start或service httpd restart或service httpd stop来启动或停止Apathe2服务。
启动及停止:
/usr/local/apache2/bin/apachectl –k start
netstat -tnl 可以看到80端口,说明apache启动了。
ifconfig查看Linux服务器ip地址:
inet addr:127.0.0.1
用浏览器查看http:// 127.0.0.1/index.html得到it works!说明apache已经配置成功了。
或,用浏览器查看http://localhost/index.html得到it works!说明apache已经配置成功了。
/usr/local/apache2/bin/apachectl -k stop
/usr/local/apache2/bin/apachectl –k restart
若想开机时自动启动apache服务器,在/etc/rc.local的exit 0前加入
/usr/local/apache2/bin/apachectl –k start
若不想运行/etc/rc.local,只要chmod –x /etc/rc.local即可。
说明:
–prefix=/usr/local/apache2说明安装路径,以后要删除安装就只需删除这个目录。
–sysconfdir=/etc/httpd说明主配置文件httpd.conf位置
–enable-ssl支持网页加密
–enable-modules支持模块
手动安装的网站默认目录在/usr/local/apache2/htdocs,由/etc/httpd/httpd.conf中的DocumentRoot “/usr/local/apache2/htdocs”一行说明。
配置:
vim /etc/httpd/httpd.conf
将ServerAdmin you@example.com一行改为自己的常用邮箱。
DocumentRoot “/usr/local/apache2/htdocs”一行说明了网站的默认目录。
3.安装PHP-5.2.9
软件获取:http://www.php.net/downloads.php
安装php之前先要安装:
zlib-1.2.3软件获取:http://www.zlib.net
tar xvfz zlib-1.2.3.tar.gz
cd zlib-1.2.3.tar.gz
./configure –prefix=/usr/local/zlib
make
make install
freetype-2.3.9软件获取:http://sourceforge.net/projects/freetype/files/
tar xvfz freetype-2.3.9.tar.gz
cd freetype-2.3.9
./configure –prefix=/usr/local/freetype2
make
make install
libpng-1.2.38软件获取:http://sourceforge.net/projects/libpng/files/
tar xvfz libpng-1.2.7.tar.gz
cd libpng-1.2.38
./configure –prefix=/usr/local/libpng
make
make install
libxml2-2.7.3软件获取:
tar zxf libxml2-2.7.3.tar.gz
cd libxml2-2.7.3.tar.gz
./configure –prefix=/usr/local/libxml2
make
make install
jpeg-7软件获取:http://www.ijg.org
tar xvfz jpegsrc.v7.tar.gz
cd jpeg-7/
mkdir -p /usr/local/jpeg7
mkdir -p /usr/local/jpeg7/bin
mkdir -p /usr/local/jpeg7/lib
mkdir -p /usr/local/jpeg7/include
mkdir -p /usr/local/jpeg7/man
mkdir -p /usr/local/jpeg7/man/man1
./configure –prefiex=/usr/local/jpeg7 \
–enable-shared \
–enable-static
make
make test
make install
gd-2.0.35软件获取:http://www.libgd.org/Downloads
tar zxvf gd-2.0.35.tar.gz
cd gd-2.0.35
vim gd_png.c
将#include “png.h”改为:
#include “/usr/local/libpng/include/png.h”
./configure –prefix=/usr/local/gd2 \
–with-png=/usr/local/libpng \
–with-freetype=/usr/local/freetype2 \
–with-jpeg=/usr/local/jpeg7
make
make install
安装步骤:
tar xvfz php-5.2.9.tar.gz
cd php-5.2.9
./configure \
–prefix=/usr/local/php5 \
–with-apxs2=/usr/local/apache2/bin/apxs \
–with-mysql=/usr/local/mysql \
–with-libxml-dir=/usr/local/libxml2 \
–with-zlib=/usr/local/zlib \
–with-freetype-dir=/usr/local/freetype2 \
–with-png-dir=/usr/local/libpng \
–with-jpeg-dir=/usr/local/jpeg7 \
–with-gd=/usr/local/gd2 \
–enable-sockets \
–enable-ftp \
–enable-calendar
make
make test
make install
cp php.ini-dist /usr/local/php5/lib/php.ini
vim /usr/local/php5/lib/php.ini修改
register_globals = On
将#extension=php_mysql.dll前面的#去掉
修改;data.timezone =为data.timezone = Asia/Shanghai
重新配置apache2让它支持php:
vim /etc/httpd/httpd.conf
查找<IfModule mime_module>
在此范围内添加:
AddType application/x-httpd-php .php .phtml .php3 .inc
AddType application/x-httpd-php-source .phps
启动apache:
/usr/local/apache2/bin/apachectl start
在/usr/local/apache2/htdocs目录里建一个php测试页info.php,内容如下 :
<?
phpinfo();
?>
用浏览器查看http://localhost/info.php正常的话可以看到php的信息。
Apache+MySQL+php安装成功!
