您的位置:首页 > 运维架构 > Linux

linux下配置lamp

2016-03-04 09:13 489 查看
相应的文件以及环境一体包:https://yunpan.cn/cYyqs2rzZe98L (提取码:5003)

这里主要是在Centos7 上配置 下载网址:http://www.centoscn.com/


一、首先安装操作系统

最小化安装操作系统 centos7。

问题:-bash ..: command not found

解决:[root@localhost ~]# vi /etc/profile在文件的最末一行,添加 export PATH=$PATH:/sbin,然后保存并关闭文件。[root@localhost
~]# source /etc/profile使刚才更改后的配置文件生效。注意,etc 前面的 / 不能少。


二、安装前的准备

1.上传所有源码包到 /usr/local/src

2.标准库安装————标准库是一些基本的底层库,有很多软件都是依附与这些底层库[root@localhost ~]# yum -y install wget make vim install gcc gcc-c++
ncurses ncurses-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel
openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers pcre pcre-devel zlip zlip-devel

搭建LNMP环境时,需要安装的所有软件都要按照一定的顺序安装,我们按照Nginx->MySQL->PHP的顺序安装。但是在安 装PHP之前,应先安装PHP5需要的最新版本库文件,例如libxml2、libmcrypt,以及GD2库等文件。安装GD2库是为了让PHP5支持 GIF、PNG和JPEG图片格式,所以在安装GD2库之前还要先安装最新的zlib、libpng、freetype和jpegsrc等库文件。而且中 间还会穿插安装一些软件。

LAMP环境搭建所需要的每个软件的源代码文件,都是以.tar.gz提供给我们的打包压缩文件,所以我们必须将其解压再解包。可通过命令#tar zxvf tarfile.tar.gz达到目的。

进行解压后的目录,LAMP环境搭建所需要的软件都使用C语言开发的,所以安装源代码文件最少需要配置(configure)、编译(make)、安装(make install)三个步骤。


三、NGINX 安装&配置

1.进入存放压缩包的目录,我这里是 /usr/local/src[root@localhost ~]# cd /usr/local/src2.解压缩nginx源码包[root@localhost
~]# tar zxvf nginx-1.5.1.tar.gz3.进入nginx目录[root@localhost ~]# cd nginx-1.5.14.配置[root@localhost
~]# ./configure --prefix=/usr/local/webserver/nginx5.编译[root@localhost ~]# make6.安装[root@localhost
~]# make install备注:5、6步骤可以合起来[root@localhost ~]# make && make install7.上传启动nginx脚本 

上传nginx脚本到/etc/init.d/ 

8.修改nginx脚本权限[root@localhost ~]# chmod +x /etc/init.d/nginx9.添加到系统服务[root@localhost
~]# /sbin/chkconfig nginx on备注:使用以下命令对nginx操作[root@localhost ~]# service nginx start

[root@localhost ~]# service nginx stop

[root@localhost ~]# service nginx restart

[root@localhost ~]# service nginx reload

[root@localhost ~]# /etc/init.d/nginx start

[root@localhost ~]# /etc/init.d/nginx stop

[root@localhost ~]# /etc/init.d/nginx restart

[root@localhost ~]# /etc/init.d/nginx reload10.配置防火墙,开启80端口、3306端口 

CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。 

10-1、关闭firewall:[root@localhost ~]# systemctl stop firewalld.service //停止firewall

[root@localhost ~]# systemctl disable firewalld.service //禁止firewall开机启动10-2、安装iptables防火墙[root@localhost
~]# yum -y install iptables-services //安装

[root@localhost ~]# vi /etc/sysconfig/iptables //编辑防火墙配置文件在 

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT 

之后加上 

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT 

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT 

保存退出[root@localhost ~]# systemctl restart iptables.service //最后重启防火墙使配置生效

[root@localhost ~]# systemctl enable iptables.service //设置防火墙开机启动11、关闭SELINUX[root@localhost ~]#
vi /etc/selinux/config#SELINUX=enforcing //注释掉 

#SELINUXTYPE=targeted //注释掉 

SELINUX=disabled //增加 

保存退出 
[root@localhost ~]# setenforce 0 //使配置立即生效12.在浏览器中输入服务器的ip,可以看到“Welcome to nginx!”,就说明安装成功!


四、MYSQL 安装&配置

1.进入存放压缩包的目录,我这里是 /usr/local/src[root@localhost ~]# cd /usr/local/src2.解压缩mysql源码包[root@localhost
~]# tar zxvf mysql-5.1.72-linux-x86_64-glibc23.tar.gz3.移动mysql到/usr/local/webserver/mysql[root@localhost
~]# mv mysql-5.1.72-linux-x86_64-glibc23 /usr/local/webserver/mysql4.配置[root@localhost ~]# groupadd
mysql

[root@localhost ~]# useradd -r -g mysql mysql

[root@localhost ~]# cd /usr/local/webserver/mysql

[root@localhost ~]# chown -R mysql .

[root@localhost ~]# chgrp -R mysql .

[root@localhost ~]# scripts/mysql_install_db --user=mysql

[root@localhost ~]# chown -R root .

[root@localhost ~]# chown -R mysql data5.可选步骤[root@localhost ~]# cp support-files/my-medium.cnf
/etc/my.cnf //如果是5.1,则复制my-medium.cnf,以防止由于系统内存不足而启动报错

[root@localhost ~]# bin/mysqld_safe --user=mysql6.修改mysql.server脚本[root@localhost ~]# vi /usr/local/webserver/mysql/support-files/mysql.server将 

basedir= 

datadir= 

改为 

basedir=/usr/local/webserver/mysql 

datadir=/usr/local/webserver/mysql/data 

7.配置启动脚本[root@localhost ~]# cd /usr/local/webserver/mysql

[root@localhost ~]# cp /usr/local/webserver/mysql/support-files/mysql.server /etc/init.d/mysql8.编辑客户端脚本[root@localhost
~]# vi /etc/profile在文件的最末一行,添加 

export PATH=$PATH:/usr/local/webserver/mysql/bin 

export PATH=$PATH:/usr/local/webserver/php/bin 

然后保存并关闭文件。[root@localhost ~]# source /etc/profile9.启动mysql[root@localhost
~]# service mysql start //如果报错尝试scripts/mysql_install_db --user=mysql,还报错尝试reboot,还报错尝试百度^_^10.给mysql设置用户和密码[root@localhost
~]# mysql

mysql> grant all on *.* to username@"%" identified by "123123";

Query OK, 0 rows affected (0.00 sec)

mysql> quit[root@localhost ~]# /sbin/chkconfig mysql on //设置mysql开机启动


五、PHP 依赖库安装

1.libxml2 ———— 包含库和实用工具用于解析XML文件[root@localhost ~]# cd /usr/local/src

[root@localhost ~]# tar zxvf libxml2-2.9.0.tar.gz

[root@localhost ~]# cd libxml2-2.9.0

[root@localhost ~]# ./configure --prefix=/usr/local/webserver/libxml2

[root@localhost ~]# make && make install
2.libmcrypt ———— 加密算法扩展库(支持DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+等算法)[root@localhost
~]# cd /usr/local/src

[root@localhost ~]# tar zxvf libmcrypt-2.5.8.tar.gz

[root@localhost ~]# cd libmcrypt-2.5.8

[root@localhost ~]# ./configure --prefix=/usr/local/webserver/libmcrypt

[root@localhost ~]# make && make install
3.freetype[root@localhost ~]# cd /usr/local/src

[root@localhost ~]# tar zxvf freetype-2.4.10.tar.gz

[root@localhost ~]# cd freetype-2.4.10

[root@localhost ~]# ./configure --prefix=/usr/local/webserver/freetype

[root@localhost ~]# make && make install
4.zlib[root@localhost ~]# cd /usr/local/src

[root@localhost ~]# tar zxvf zlib-1.2.7.tar.gz

[root@localhost ~]# cd zlib-1.2.7

[root@localhost ~]# ./configure --prefix=/usr/local/webserver/zlib

[root@localhost ~]# make && make install
5.libpng[root@localhost ~]# cd /usr/local/src

[root@localhost ~]# tar zxvf libpng-1.5.14.tar.gz

[root@localhost ~]# cd libpng-1.5.14

[root@localhost ~]# ./configure --prefix=/usr/local/webserver/libpng

[root@localhost ~]# make && make install
6.jpeg6 

首先创建jpeg6所需目录,因为安装时不能自己创建目录[root@localhost ~]# mkdir /usr/local/webserver/jpeg6 //建立jpeg6软件安装目录

[root@localhost ~]# mkdir /usr/local/webserver/jpeg6/bin //建立存放命令的目录

[root@localhost ~]# mkdir /usr/local/webserver/jpeg6/lib //创建jpeg6库文件所在目录

[root@localhost ~]# mkdir /usr/local/webserver/jpeg6/include //建立存放头文件目录

[root@localhost ~]# mkdir -p /usr/local/webserver/jpeg6/man/man1 //建立存放手册的目录
安装[root@localhost ~]# cd /usr/local/src

[root@localhost ~]# tar zxvf jpegsrc.v6b.tar.gz

[root@localhost ~]# cd jpeg-6b

[root@localhost ~]# ./configure --prefix=/usr/local/webserver/jpeg6 --enable-share --enable-static

[root@localhost ~]# make && make install
如果出错,先装libtool,[root@localhost ~]# yum -y install libtool

[root@localhost ~]# cp /usr/share/libtool/config/config.guess .

cp: overwrite ‘./config.guess’? y //注意输入y,同意覆盖!!!

[root@localhost ~]# cp /usr/share/libtool/config/config.sub . 

cp: overwrite ‘./config.sub’? y //注意输入y,同意覆盖!!!

[root@localhost ~]# make clean

[root@localhost ~]# ./configure --prefix=/usr/local/webserver/jpeg6 --enable-share --enable-static

[root@localhost ~]# make && make install
7.atuoconf[root@localhost ~]# cd /usr/local/src

[root@localhost ~]# tar zxvf autoconf-2.69.tar.gz

[root@localhost ~]# cd autoconf-2.69

[root@localhost ~]# ./configure --prefix=/usr/local/webserver/autoconf

[root@localhost ~]# make && make install
8.GD2[root@localhost ~]# cd /usr/local/src

[root@localhost ~]# tar zxvf gd-2.0.35.tar.gz

[root@localhost ~]# cd gd-2.0.35

[root@localhost ~]# ./configure --prefix=/usr/local/webserver/gd2 \

> --with-jpeg=/usr/local/webserver/jpeg6/ \

> --with-png=/usr/local/webserver/libpng/ \

> --with-freetype=/usr/local/webserver/freetype/ 

[root@localhost ~]# make && make install
如果报错:make[2]: *** [gd_png.lo] Error 1

make[2]: Leaving directory `/tmp/gd-2.0.35'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/tmp/gd-2.0.35'

make: *** [all] Error 2解决方案:vi gd_png.c找到#include "png.h"改成#include "/usr/local/webserver/libpng/include/png.h"


五、PHP 安装&配置

[root@localhost ~]# cd /usr/local/src

[root@localhost ~]# tar zxvf php-5.3.26.tar.gz

[root@localhost ~]# cd php-5.3.26

[root@localhost ~]# ./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php/etc --with-mysql=/usr/local/webserver/mysql/ --with-mysqli=/usr/local/webserver/mysql/bin/mysql_config --with-libxml-dir=/usr/local/webserver/libxml2/
--with-png-dir=/usr/local/webserver/libpng/ --with-jpeg-dir=/usr/local/webserver/jpeg6/ --with-freetype-dir=/usr/local/webserver/freetype/ --with-gd=/usr/local/webserver/gd2/ --with-zlib-dir=/usr/local/webserver/zlib/ --with-mcrypt=/usr/local/webserver/libmcrypt/
--with-openssl --with-iconv --enable-soap --enable-fpm --enable-xml --enable-bcmath --enable-pcntl --enable-shmop --enable-simplexml --enable-ftp --enable-mbstring=all --enable-sockets 

[root@localhost ~]# make && make install[root@localhost ~]# cp php.ini-development /usr/local/webserver/php/etc/php.ini配置 

上传php.ini到 /usr/local/webserver/php/etc/ 将原来的覆盖 

修改nginx.conf里面的server_name为要装配的主机IP,并上传到 /usr/local/webserver/nginx/conf/ 

上传php-fpm到/etc/init.d/ 

赋予脚本执行权限[root@localhost ~]# cd /usr/local/webserver/php/etc && cp php-fpm.conf.default php-fpm.conf

[root@localhost ~]# chmod +x /etc/init.d/php-fpm设置开机启动[root@localhost ~]# /sbin/chkconfig php-fpm
on再启动php服务之前,先安装Zend Guard Loader
[root@localhost ~]# mkdir /usr/local/webserver/zend

[root@localhost ~]# cd /usr/local/src

[root@localhost ~]# tar zxvf ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz

[root@localhost ~]# cp /usr/local/src/ZendGuardLoader-php-5.3-linux-glibc23-x86_64/php-5.3.x/ZendGuardLoader.so /usr/local/webserver/zend
使用以下命令对php操作[root@localhost ~]# service php-fpm start

[root@localhost ~]# service php-fpm stop

[root@localhost ~]# service php-fpm restart


六、创建www目录

[root@localhost ~]# cd /root/ && mkdir /data/ && mkdir /data/www

[root@localhost ~]# cd /data/www

[root@localhost ~]# chmod 777 -R /data/www //设置权限

[root@localhost ~]# vi ./index.php输入

php phpinfo(); 保存退出[root@localhost ~]# service php-fpm restart //重启php服务

[root@localhost ~]# service nginx restart //重启nginx服务访问 服务器IP 出现 PHPinfo信息页面 说明 PHP安装成功
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux lamp centos