LAMP环境搭建

来源:互联网 发布:文件管理器软件 编辑:程序博客网 时间:2024/06/10 01:12

1.LAMP环境搭建

        LAMP=Linux+Apache+Mysql+PHP,即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP作为服务器端脚本解释器,要搭建LAMP环境,首先到官方网站下载相应的最新安装包

1.1安装Apache

(1).Apache目前最新版本为2.4.2,可以到官方网站上下载 http://httpd.apache.org/Apache源码包,然后解压:

tar zxvf httpd-2.4.2.tar.gz

(2)进入解压后目录,构建并安装Apache 

cd httpd-2.4.2

./configure --enable-so –prefix=/usr/local/apache2

make

make install

注意:apache安装过程依赖apr、apr-util、pcre,一般也将安装在/usr/local/下,编译时使用以下命令:

./configure -prefix=/usr/local/apache2  --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util  --with-pcre=/usr/local/pcre --enable-so --enable-rewrite

(3).启动Apache并查看Apache启动是否正常

    进入apache的安装目录:

/usr/local/apache2/bin/apachectl start

      可以通过ps aux | grep httpd查看httpd进程是否存在,如果不存在请查看是不是有程序占用80端口,可以通过netstat --an | grep 80查看。

     如果apache启动正常,打开网页浏览器,输入http://ip-address,应该能够看到网页显示”Itworks !”提示Apache工作正常。

1.2安装Mysql

     先检查系统中是否安装有Mysql。若没有安装,则按照以下步骤安装

(1)下载mysql/usr/local/src/

    cd /usr/local/src/

    wgethttp://syslab.comsenz.com/downloads/linux/mysql-5.0.86-linux-i686-icc-glibc23.tar.gz

(2)解压

     tar zxvf/usr/local/src/mysql-5.0.86-linux-i686-icc-glibc23.tar.gz

(3)把解压完的数据移动到/usr/local/mysql

     mvmysql-5.0.86-linux-i686-icc-glibc23 /usr/local/mysql

(4)建立mysql用户

     useradd mysql

(5)初始化数据库

    cd /usr/local/mysql

    mkdir /data/mysql ;chown -R mysql:mysql /data/mysql

   ./scripts/mysql_install_db--user=mysql --datadir=/data/mysql

--user定义数据库的所属主,--datadir定义数据库安装到哪里,建议放到大空间的分区上,这个目录需要自行创建。

(6)拷贝配置文件

    cpsupport-files/my-large.cnf /etc/my.cnf

(7)拷贝启动脚本文件并修改其属性

    cpsupport-files/mysql.server /etc/init.d/mysqld

    chmod 755/etc/init.d/mysqld

(8)修改启动脚本

    vim /etc/init.d/mysqld

    需要修改的地方有datadir=/data/mysql(前面初始化数据库时定义的目录)

(9)把启动脚本加入系统服务项,并设定开机启动,启动mysql

    chkconfig --add mysqld

    chkconfig mysqld on

    service mysqld start

    如果启动不了,请到/data/mysql/下查看错误日志,这个日志通常是主机名.err。关于mysql的配置文件/etc/my.cnf请参考这篇文章http://mylinux.5d6d.com/thread-87-1-1.html

3.PHP安装

    到PHP官方网站http://www.php.net/最新版本5.4.4源码包:php-5.4.4.tar.gz

(1)解压php-5.4.4.tar.gz

tar  zxvf php-5.4.4.tar.gz

(2)编译

./configure  --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-curl --with-pear --with-gd --with-jpeg-dir  --with-png-dir --with-zlib --with-freetype-dir --with-t1lib  --with-mcrypt --with-mhash --with-mysql  --with-mysqli --enable-pdo --with-pdo-mysql --with-openssl --with-xmlrpc  --with-gettext --with-fpm-user=www-data --with-fpm-group=www-data  --enable-fpm --enable-exif --enable-wddx --enable-zip --enable-bcmath

在编译过程中,可能缺少很多包,大家可以google,找到相应包,下载安装或者从安装系统光盘上查找。

(3)如果步骤2没出现错误,可以进行以下步骤

make&&make  install

(4)配置php.ini,进入 PHP解压目录:php-5.4.4

cp  php.ini-development /usr/local/php5/etc/php.ini

cp  /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf

(5)建立www:www用户

groupadd  www

useradd  -g www www

(6)修改/usr/local/php5/etc/php-fpm.conf

vi  /usr/local/php5/etc/php-fpm.conf

找到user,group部分,将其值设为

user  = www

group  = www

4.Apache结合PHP  

Apache主配置文件为:/usr/local/apache2/conf/httpd.conf

vi/usr/local/apache2/conf/httpd.conf

(1)找到:

AddType  application/x-gzip .gz .tgz

在该行下面添加

AddType  application/x-httpd-php .php

(2)找到:

<IfModule  dir_module>

DirectoryIndex  index.html

</IfModule>

将该行改为

<IfModule  dir_module>

DirectoryIndex  index.html index.htm index.php

</IfModule>

5. 配置apache的进程管理以及虚拟主机

1. 配置Apache进程管理

     配置文件为:/usr/local/apache2/conf/extra/httpd-mpm.conf

将配置文件中下面一段修改为如下:

<IfModule  mpm_prefork_module>

    ServerLimit          3508   新添加

    StartServers          5

    MinSpareServers      5

    MaxSpareServers      10

    MaxClients           1024默认最大为256,设置为超过256必须增加有ServerLimit

    MaxRequestsPerChild   0

</IfModule>

2. 配置Apache虚拟主机

     配置文件为:/usr/local/apache2/conf/extra/httpd-vhosts.conf

将配置文件中下面一段修改为如下:

<VirtualHost  *:80>

   # ServerAdmin  webmaster@dummy-host.example.com

    DocumentRoot "/data/www"

    ServerName www.example.com.cn

    ErrorLog  "|/usr/local/apache2/bin/rotatelogs -l /www/logs/error.log-%Y%m%d  86400"

   CustomLog  "|/usr/local/apache2/bin/rotatelogs -l /www/logs/access.log-%Y%m%d  86400" combined

   </VirtualHost>

说明:

ServerAdmin 参数后为管理员email

DocumentRoot 指的是论坛文件存放的目录

ServerName  是论坛的域名

ErrorLog 是论坛错误日志 通过管道使用apache自带的rotatelogs工具将日志切割为每天一个文件

CustomLog 是论坛访问日志,同样切割为每天一个文件

3.配置Apache缺省httpd设置

配置文件为:/usr/local/apache2/conf/extra/httpd-default.conf

将配置文件中下面一段:

KeepAlive On改为KeepAliveOff

4.配置Apache的访问权限

    vim /usr/local/apache2/conf/httpd.conf

找到

<Directory  />

Options  FollowSymLinks

AllowOverride  None

Order  deny,allow

Deny  from all

</Directory>

改成:

<Directory  />

Options  FollowSymLinks

AllowOverride  None

Order  deny,allow

Allow  from all

</Directory> 

5.配置Apache的运行账户

vim  /usr/local/apache2/conf/httpd.conf

找到

User  daemon

Group  daemon

改成

User  www

Group  www

配置完上述内容之后,启动Apache

/usr/local/apache2/bin/apachectlstart

6.测试LAMP环境是否配置成功

Apahe服务目录默认在/srv/www/hotdoc下,故在此目录下新建index.php文件,

<html>

<body>

<?php  phpinfo(); ?>

</body>

</html>

保存后,然后在浏览器中输入http://ip/index.php,看是否能看到php的相关配置信息,如果能看到,说明配置成功。PHP配置信息如下所示:

                          

参考资料:

http://www.php.net/manual/zh/install.unix.apache2.php

http://mylinux.5d6d.com/study/16.htm

http://demeter.uni-regensburg.de/SLE11SP1-SDK-x64/DVD1/suse/x86_64/