LAMP实战

说明:本实验在单主机搭建。下面的步骤只需要你复制粘贴,即可完成实验。

1、安装httpd

mkdir /tools
cd /tools
#获取软件包
wget -c http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.16.tar.gz
wget http://mirrors.cnnic.cn/apache//apr/apr-1.5.2.tar.bz2
wget http://mirrors.cnnic.cn/apache//apr/apr-util-1.5.4.tar.bz2
tar -xf httpd-2.4.16.tar.gz
tar -xf apr-1.5.2.tar.bz2
tar -xf apr-util-1.5.4.tar.bz2
#编译安装各软件
cd apr-1.5.2
./configure --prefix=/usr/local/apr
make && make install
cd ../apr-util-1.5.4
./configure --prefix=/usr/local/apr-utils --with-apr=/usr/local/apr/
make && make install
cd ../httpd-2.4.16
yum install pcre-devel zlib-devel -y
./configure --prefix=/usr/local/apache --enable-deflate  --enable-expires  --enable-headers  --enable-modules=most --enable-so     --with-mpm=worker --enable-rewrite --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-utils/
make && make install

 

2、安装MySQL。

#安装依赖包

yum install -y autoconf* automake* zlib* libxml* ncurses-devel* libgcrypt* libtool* openssl*
yum install cmake -y
#添加用户和组
groupadd mysql
useradd -g mysql -M -s /sbin/nologin mysql
mkdir -p /data/3306/data
#获取包和安装
cd /tools
wget http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.45.tar.gz
tar -xf mysql-5.5.45.tar.gz
cd mysql-5.5.45
chown mysql.mysql -R .
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data \
-DSYSCONFDIR=/etc \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DWITH_SSL=system \
-DWITH_ZLIB=system \
-DWITH_LIBWRAP=0 \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
gmake
make install
chown mysql.mysql -R /data
cd /usr/local/mysql
scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/3306/data
cp support-files/my-medium.cnf /data/3306/my.cnf
vim /data/3306/my.cnf
[root@node6 mysql]# diff /data/3306/my.cnf support-files/my-medium.cnf
39d38
< datadir=/data/3306/data
51c50
< log-error = /data/3306/data/mysql-err
---
>

3、安装php

cd /tools
yum install zlib libxml libjpeg freetype libpng gd  curl libiconv  zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel openssl-devel libxslt-devel -y  #这些东西因为php需要画图,不安装容易出现问题
wget http://ftp.gnu.org/gnu/libiconv/libiconv-1.14.tar.gz
tar zxf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local/libiconv
make
make install
cd ../
#提前下载好php53
tar -xf php-5.3.27.tar.bz2
cd php-5.3.27
./configure \
--prefix=/usr/local/php53 \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-mysql=/usr/local/mysql \
--with-xmlrpc \
--with-openssl \
--with-zlib \
--with-freetype-dir \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-iconv=/usr/local/libiconv \
--enable-short-tags \
--enable-sockets \
--enable-zend-multibyte \
--enable-soap \
--enable-mbstring \
--enable-static \
--enable-gd-native-ttf \
--with-curl \
--with-xsl \
--enable-ftp \
--with-libxml-dir
make
make install
cp php.ini-production /usr/local/php53/lib/php.ini 
[root@node6 php-5.3.27]# grep php /usr/local/apache/conf/httpd.conf
LoadModule php5_module        modules/libphp5.so

4、整合apache,php,mysql

useradd  -M -s /sbin/nologin www
vim /usr/local/apache/conf/httpd.conf
[root@node6 apache]# diff conf/httpd.conf conf/httpd.conf.bak
149d148
< LoadModule php5_module        modules/libphp5.so
160c159
< User www
---
> User daemon
249c248
<     DirectoryIndex index.php index.html
---
>     DirectoryIndex index.html
378,379d376
<     AddType application/x-httpd-php .php
<     AddType application/x-httpd-php-source .php .phps
 
vim /usr/local/apache/htdocs/index.php
<?php
       phpinfo();
?>
/usr/local/apache/bin/apachectl -t
/usr/local/apache/bin/apachectl start
iptables -I INPUT -d 192.168.198.160 -p tcp --dport 80 -j ACCEPT

 OK3Q[~DZ78%0671)K[KUZ41.png

4.2整合php和mysql

/usr/local/mysql/bin/mysqld_safe --defaults-file=/data/3306/my.cnf &
/usr/local/mysql/bin/mysql -e "delete from mysql.user where user='';"
 
vim /usr/local/apache/htdocs/index.php
<?php
       $link_id=mysql_connect('localhost','root','') or mysql_error();
 
       if($link_id){
              echo "mysql successful by yunzhonghe !";
       }else{
              echo mysql_error();
       }
 
?>

8RDD}GXG5LC2P{]5DB[0XFU.png

总结:到此一个简单的lamp平台搭建完成。用时大约1小时。

原创文章,作者:艾贺,如若转载,请注明出处:http://www.178linux.com/8673

赞 (0)
艾贺艾贺
上一篇 2015-10-08 21:39
下一篇 2015-10-08 21:41

相关推荐

  • Linux删除特殊字符文件

    由于很多原因可能会导致一些文件的文件名是乱码,当我们删除的时候就会发现这个文件名既不能自动补全,也不能直接删除。

    2017-11-11
  • 硬链接与软链接的联系与区别

    硬链接与软链接的联系与区别 我们知道文件都有文件名与数据,这在 Linux 上被分成两个部分:用户数据 (user data) 与元数据 (metadata)。用户数据,即文件数据块 (data block),数据块是记录文件真实内容的地方;而元数据则是文件的附加属性,如文件大小、创建时间、所有者等信息。在 Linux 中,元数据中的 inode 号(ino…

    Linux干货 2016-10-23
  • Shell 位置参数总结

    描述: 位置参数指的是shell脚本的命令行参数,同时也表示shell函数的额函数参数。 说明: 示例: #!/bin/sh echo "number:$#"     # 传给脚本的参数个数 echo "scname:$0" &n…

    Linux干货 2016-08-16
  • 进入linux世界的初步认识

    1、 描述计算机的组成及其功能.
    2、 按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别.
    3、 描述Linux的哲学思想,并按照自己的理解对其进行解释性描述.
    4、 说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述.
    5、 如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的.
    6、 请罗列Linux发行版的基础目录名称命名法则及功用规定.

    Linux干货 2018-02-25
  • linux挂载的基本使用

    挂载   挂载是指将一个设备(通常是存储设备)挂接到一个已存在的目录上。 我们要访问存储设备中的文件,必须将文件所在的分区(已有文件系统)挂载到一个已存在的目录上, 然后通过访问这个目录来访问存储设备。 挂载条件 1、挂载点必须是一个目录。 2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将隐藏不可用。对于其他…

    Linux干货 2016-09-07
  • 计算机基础知识及服务器介绍

    现代计算机组成 根据冯·诺依曼结构体系计算机有五大部件组成: 运算器、控制器、存储器、输入设备、输出设备 CPU=运算器+控制器 运算器由算术逻辑单元(ALU)、累加器、状态寄存器、通用寄存器组等组成。 算术逻辑运算单元(ALU)的基本功能为加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、求补等操作。 运算器只能进行二进制运算、逻辑运算 控制器…

    Linux干货 2016-06-09

评论列表(1条)

  • 包756366536
    包756366536 2015-10-09 14:17

    最后出现这个输入地址直接出现