搭建LAMP
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搭建LAMP相关的知识,希望对你有一定的参考价值。
搭建LAMP环境
LAMP是一个缩写词,具体包括linux操作系统,apache网站服务器,mysql数据库服务器,php(或perl、python)网页编程语言
LAMP平台的构成组件
linux操作系统:作为LAMP架构的基础,提供用于支撑Web站点的操作系统,能够与其他三个组件提供更高的稳定性、兼容性
Apache网站服务器:作为LAMP架构的前端,是一款功能强大、稳定性好的WEb服务器程序,该服务器直接面向用户提供网站访问,发送网页,图片等文件内容
mysql数据库服务器:作为LAMP架构的后端,是一款流行的的开源关系数据库系统。在企业网站,业务系统等应用中,各种账户信息,产品信息,客户资料,业务数据等都可以存储到mysql数据库
PHP/Perl/Python网页编程语言:作为三种开发动态网页的编程语言,负责解释动态网页文件,并提供Web应用程序和运行环境。
LAMP平台的应用优势:成本低廉、可定制、易于开发、方便易用、安全和稳定
注意:对于初学者建议关闭系统的防火墙,就是关闭ip tables和selinux
关闭防火墙:chkconfig iptables off
查看防火墙命令:chkconfig --list iptables
打开seliunx服务的命令:vim /etc/sysconfig/selinux
将seliunx修改为disabled(如果不修改的,初学者经常会碰到一些服务开启不了)
做LAMP实验需要用到IP地址,本案例的IP地址为192.168.1.1
打开设置IP地址的命令:vim /etc/sysconfig/network-scripts/ifcfg-eth0
配置好IP后,用service network restart命令将网卡重启
因为自己的Centos并没有安装VMware Tools,所以接下来还要进行安装
首先将光盘挂上之后点击安装tools(如果发现最后没有安装成功,请取消安装,再重新安装一次就OK,如果安装了,请跳过)
先切进VMware Tools中:cd /media/VMware\ Tools/
用ls查看一下
用tar命令将包解压到tmp目录下:tar zxvf VMwareTools-10.0.10-4301679.tar.gz -C /tmp
解压完之后,可以切进tmp目录下并且查看一下
用cd命令切进去并且查看一下
用./命令进行安装:./vmware-install.pl
之后就是无脑回车下一步
如果本地yum安装了请继续跳过
安装本地yum的步骤:依然先将光盘挂上
用df -h查看一下
删除/dev/sr0这个挂载点:umount /dev/sr0
删除完之后重新将/dev/sr0进行挂载,挂在到/media下
用cd切进 /etc/yum,repos.d/目录下
命令:cd /etc/yum.repos.d/
用ls查看一下
推荐删除这三个(当然也可以将这三个进行改名)
用rm -rf命令进行删除:rm -rf CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Vault.repo
用vim CentOS-Media.repo进行编辑
baseurl=file:///media/ ——指定本地yum的存放目录
gpgcheck=0 ——检查GPG-KEY,0为不检查,1为检查
enabled=1 ——是否启用yum源,0为禁用,1为启用
改完之后用wq保存退出
可以用yum安装gcc验证一下:yum -y install gcc*
能安装gcc说明yum已经成功安装完毕
安装完成之后就可以重启,正好将前面所做的服务一起重启
正式搭建LAMP
步骤;
1:首先安装httpd-2.2.25.tar.gz
先查看自己虚拟机自身有没有httpd服务,有的话就删除后再安装
查看httpd命令:rpm -qa httpd
发现已经安装了,那么就需要删除它
删除httpd命令:rpm -e httpd --nodeps
再查看时就没有了
接下来就需要将httpd包解压到/usr/src下
命令:tar zxvf httpd-2.2.25.tar.gz -C /usr/src/
用cd切进去这个包
然后对httpd进行一些配置
命令:./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-list --enable-cgi
--prefix:指定将httpd服务程序安装到哪个目录下,如/usr/local/httpd
--enable-so:启用动态加载模块支持
-enable-rewrite:启用网页地址重写功能,用于网站优化及目录迁移维护
--enable-charset-list:启动字符集支持,以便支持使用各种字符集编码的网页
--enable-cgi:启用CGI脚本程序支持,便于扩展网站的应用访问能力
配置完之后进行编译及编译安装
命令:make && make install=make ;make install
优化路径:ln -s /usr/local/httpd/bin/* /usr/local/bin/
用apachectl -t检查语法
为了方便chkconfig管理,需要建立可控的服务,就需要将Apache脚本复制成/etc/init.d/httpd
命令:cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
复制过去之后,通过ll查看/etc/init.d/httpd的权限,如果没有就需要添加执行权限,(如果有执行权限可以跳过这一步)
命令:chmod +x /etc/init.d/httpd
接下来就需要用vim对httpd服务进行编辑
命令:vim /etc/init.d/httpd
Chkconfig:2345 80 80
2345:是服务识别参数,在级别2345中启动
第一个80:是该服务在第80个启动
第二个80:是该服务在第80个关闭
description:httpd :服务描述信息
wq保存退出
用chkconfig --add httpd将httpd添加为系统服务
用chkconfig httpd on启动httpd服务
用chkconfig --list httpd查看一下httpd是否启动了
在hosts文件中添加IP与域名
vim /etc/hosts
编辑httpd服务的主配置文件httpd.conf,查找配置项“ServerName”在附近添加一行内容“ServerName www.benet.com”,用于设置网站名称
命令:vim /usr/local/httpd/conf/httpd.conf
保存退出
将httpd启动:service httpd restart
查看httpd的端口号:netstat -anpt | grep httpd
用firefox http://192.168.1.1 进行验证
到这Apache的安装以及配置完毕
2.安装MySQL
首先在虚拟机上装上MySQL包和cmake包(MySQL5.5需要cmake编译安装)
先安装cmake包(安装mysql需要cmake进行安装)
用tar命令将该包解压到/usr/src目录下
命令:tar zxvf cmake-2.8.7.tar.gz -C /usr/src/
用cd切进/usr/src/cmake-2.8.7/下
命令:cd /usr/src/cmake-2.8.7/
配置、编译及安装
命令:./configure && make && make install
Cmake包已经安装完成
先查看系统有没有自带MySQL和mysql-server,没有的话就安装,有的话先删除了再安装
先用rpm查看一下
命令:rpm -qa mysql mysql-server
那就需要我们先删除这俩个在进行安装
命令: rpm -e mysql mysql-server --nodeps
删除后在查看看一下
现在解压mysql包到/usr/src/目录下
命令:tar zxvf mysql-5.5.22.tar.gz -C /usr/src/
进行安装环境ncurses-devel(有的系统可能因为这环境没装,导致安装不了mysql)
命令: yum -y install ncurses-devel
系统自身就有mysql这个用户,需要我们手动删除它再创建
命令:userdel mysql
创建mysql
命令:useradd -M -s /sbin/nologin mysql
对mysql进行配置
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all
-DCMAKE_INSTALL_PREFIX:指定将mysql数据库程序安装到某目录下,如目录/usr/local/mysql
-DSYSCONFDIR:指定初始化参数文件目录
-DDEFAULT_CHARSET:指定默认使用的字符集编码,如utf8
-DDEFAULT_COLLATION:指定默认使用的字符集校对规则,utf8_general_ci是适用于UTF-8字符集的通用规则
-DWITH_EXTRA_CHARSETS:指定额外支持的其他字符集编码
进行编译及安装
命令:make && make install
给数据库目录进行权限设置
命令:chown -R mysql:mysql /usr/local/mysql/
建立配置文件(在mysql源码目录中support-files文件下,提供了适合不同负载数据库的样本,如果不确定数据库系统的应用规模,一般选择my-medium.cnf文件即可,该文件能够满足大多企业需求)
命令:cp support-files/my-medium.cnf /etc/my.cnf
初始化数据库
为了能够正常常使用MySQL数据库系统,应以运行用户mysql的身份执行初始化脚本mysql_install_db,指定数据存放目录等。
命令:/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
设置环境变量
为了方便在任何目录下使用mysql命令,需要在/etc/profile设置环境变量
命令:echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
立即生效:. /etc/profile
创建软连接:ln -s /usr/local/mysql/bin/* /usr/local/bin/
将mysql服务复制成我们容易记得名字
命令: cp support-files/mysql.server /etc/init.d/mysqld
给mysql服务执行权限(如果已经有了执行权限,也可跳过这一步)
命令:chmod +x /etc/init.d/mysqld
将mysql服务设置为系统服务
命令: chkconfig --add mysqld
可以用命令查看一下mysql服务
命令:chkconfig --list mysqld
启动mysqld服务
命令:service mysqld start
查看一下mysqld服务端口号
命令:netstat -anpt | grep mysqld
将mysql数据库管理员设置为root管理员并且配置上密码
命令:mysqladmin -u root password ‘123.com‘
用mysql用户进行验证
命令:mysql -u root -p
关于MySQL的安装与配置已经完毕
接下来就是安装PHP
将这五个包装上
先解压libmcrypt-2.5.8.tar.gz、mhash-0.9.9.9.tar.gz和mcrypt-2.6.8.tar.gz 这三个包(这三个包不分先后解压),之后解压php-5.3.23.tar.gz,最后解压ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz
先解压libmcrypt-2.5.8.tar.g到/usr/src/目录下
命令:tar zxvf libmcrypt-2.5.8.tar.gz -C /usr/src/
用cd切进去
命令:cd /usr/src/libmcrypt-2.5.8/
进行配置、编译及安装
命令: ./configure && make && make install
创建软连接:ln -s /usr/local/lib/libmcrypt.* /usr/lib
该包已经安装完成,接着解压mhash-0.9.9.9.tar.gz 到/usr/src目录下
命令:tar zxvf mhash-0.9.9.9.tar.gz -C /usr/src/
用cd切进去
命令:cd /usr/src/mhash-0.9.9.9/
进行配置、编译及安装
命令:./configure && make && make install
创建软连接:ln -s /usr/local/lib/libmhash* /usr/lib
该包安装完成后该解压mcrypt-2.6.8.tar.gz 到/usr/src目录下
命令:tar zxvf mcrypt-2.6.8.tar.gz -C /usr/src/
用cd切进去
命令:cd /usr/src/mcrypt-2.6.8/
这个先用./configure进行配置会发现报错
命令:./configure
解决configure配置报错
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
然后在开始配置、编译及安装
命令: ./configure && make && make install
该包安装完之后,可开始解压php-5.3.28.tar.gz 到/usr/src目录下
命令: tar zxvf php-5.3.28.tar.gz -C /usr/src
用cd切进去:cd /usr/src/php-5.3.28/
进行配置
命令:./configure --prefix=/usr/local/php --with-mcrypt --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql/ --with-config-file-path=/usr/local/php --enable-mbstring
--prefix:指定将PHP程序安装到哪个目录下,如/usr/local/php
--with-mcrypt :加载数据加密等扩展工具支持
--with-apxs2:设置Apache HTTP Server提供的apxs提供支持程序的文件位置
--with-mysql:设置MySQL数据库服务程序的安装位置
--with-config-file-path:设置PHP的配置文件php.ini将要存放的位置
--enable-mbstring:启用多字节字符串功能,以便支持中文等代码
当你所有配置都正确时还报了这样的错,说明有环境没装
libxml2-devel这个环境没有安装
就需要用yum进行安装
命令: yum -y install libxml2-devel
再进行配置就没有问题了
编译及安装:make && make install
选择一个样例文件,并复制到PHP的配置文件目录/usr/local/php下,并改名为php.ini
命令:cp /usr/src/php-5.3.28/php.ini-development /usr/local/php/php.ini
通过修改php.ini文件中的配置内容,可以控制PHP网页的执行特性。
命令: vim /usr/local/php/php.ini
;default_charset = "iso-8859-1"改为default_charset = "utf-8"
short_open_tag = Off改为short_open_tag = On
接下来就是解压zxvf ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz 到/usr/src/目录下
命令: tar zxvf ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz -C /usr/src/
将ZendGuardLoader-php-5.3-linux-glibc23-x86_64里的php-5.3.x目录下的模块文件复制到PHP程序的模块文件夹
命令:cp /usr/src/ZendGuardLoader-php-5.3-linux-glibc23-x86_64/php-5.3.x/ZendGuardLoader.so /usr/local/php/lib/php/
然后修改php.ini配置文件,添加加载及启用ZendGuardLoader.so 模块的配置语句
命令:vim /usr/local/php/php.ini
保存退出
Httpd.conf配置调整
要使httpd服务器支持PHP页面解析功能,需通过LoadModule配置项加载PHP程序的模块文件,并通过AddType配置项添加对“.pho”类型网页文件的支持。除此以外,还应修改DirectoryIndex配置行,添加index.php配置项,以识别常见的PHP首页文件
命令:vim /usr/local/httpd/conf/httpd.conf
LoadModule:
AddType:
DirectoryIndex:
将该服务重启以更新配置
命令:service httpd restart
建立配置文件及将phpmyadmin套件复制到网站目录
命令:cd /usr/local/httpd/htdocs/
mv index.html index.html_back
进行编辑网站:vim index.php
格式:
<?php
Phpinfo () ;
?>
编辑完之后用 firefox http://192.168.1.1
进行验证
出现以上画面代表成功了
测试PHP网页能否访问MySQL数据库
<?php
$link=mysql_connect(‘localhost‘,‘root‘,‘123.com‘); //连接MySQL数据库,主机,用户,密码
if($link) echo "恭喜你,数据库连接成功啦!!"; //连接成功时反馈信息
mysql_close(); //关闭数据连接
?>
注意事项:上面标点符号都是英文标点符号
验证效果
命令:firefox
实验到此,LAMP的环境已经简单的搭建完成了
本文出自 “12851452” 博客,谢绝转载!
以上是关于搭建LAMP的主要内容,如果未能解决你的问题,请参考以下文章