LAMP搭建流程
搭建环境:CentOS 7 VMware虚拟机
本文所用所有源码包:http://download.csdn.net/download/q6300222302/10120728
设置虚拟机静态ip
cd /etc/sysconfig/network-scripts
vim ifcfg-ens33 #网卡名称可能不同
BOOTPROTO="static"
IPADDR=192.168.249.33 #ip地址
GATEWAY=192.168.124.1 #默认网关
NETMASK=255.255.255.0 #子网掩码
DNS1=192.168.1.1 #dns
DNS2=114.114.114.114
### 在VMware虚拟机里设置静态ip后CentOS 7将无法访问外网
### 整个安装流程都在未连接外网情况下进行,且顺序不应打乱
systemctl restart network.service
# 关闭SELINUX
vim /etc/selinux/config
SELINUX=disabled
reboot
--------------------安装gcc gcc-c++ -----------------------------------------------------
从光盘 yum 安装
mount /dev/sr0 /media #挂在光盘
vim /etc/yum.repos.d/CentOS-Media.repo #配置yum源文件
baseurl=file:///media/ #替换内容
gpgcheck=0
enabled=1
#将网络yum源暂时隐藏:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
#同时安装gcc和gcc-c++
yum install gcc gcc-c++
--------- 关闭系统RPM安装的apache MySQL服务 --------------------
systemctl stop httpd.service
systemctl stop mysql.service
并确定其不能开机自启动(最好删除)
systemctl status httpd.service
systemctl status mysql.service
-------------- 关闭防火墙 ----------------------------------------
1、直接关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
systemctl status firewalld.service #查看firewall状态
2、设置 iptables service
yum -y install iptables-services
如果要修改防火墙配置,如增加防火墙端口3306
vi /etc/sysconfig/iptables
增加规则
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
保存退出后
systemctl restart iptables.service #重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
最后重启系统使设置生效即可
-------------------------- 关闭多余服务 ------------------------------------
ntsysv
#一下为必须开启的服务
Atd
crond # atd crond计划任务
Irqbalance
microcode_ctl # 系统irq端口调用,系统服务
network
sendmail
sshd
syslog
------------------------------ 将源码包拷贝到/lamp目录下 ------------------------------
cd /lamp
tar -xzf *.tar.gz //解压tar.gz
tar -xjf *.tar.bz2 //解压 tar.bz2 不能用通配符解压 高手求解
rm *.tar.gz //删除压缩包
rm *.tar.bz2
解压建议将lamp文件夹映射到windows系统,然后直接右键解压
--------------------------- 查看磁盘空间 ---------------------
df –h
------------------------ 辅助软件包安装 -------------------------------------------------------
1 # python-devel
yum -y install python-devel
2 # libxml2-2.9.1
cd /lamp/libxml2-2.9.1
./configure --prefix=/usr/local/libxml2/
make && make install
3 # libmcrypt-2.5.8
cd /lamp/libmcrypt-2.5.8
./configure --prefix=/usr/local/libmcrypt/
make && make install
4 # libltdl-2.5.8
cd /lamp/libmcrypt-2.5.8/libltdl
./configure --enable-ltdl-install
make && make install
5 # mhash-0.9.9.9
cd /lamp/mhash-0.9.9.9
./configure #不指明目录
make && make install
6 # mcrypt-2.6.8
cd /lamp/mcrypt-2.6.8
LD_LIBRARY_PATH=/usr/local/libmcrypt/lib:/usr/local/lib \(注意这里,输入\后回车继续复制下行)
./configure --with-libmcrypt-prefix=/usr/local/libmcrypt
make && make install
7 # zlib-1.2.3
cd /lamp/zlib-1.2.3
CFLAGS="-O3 -fPIC" ./configure //使用64位元的方法进行编译,32位的系统未尝试
make && make install
8 # libpng-1.2.31
cd /lamp/libpng-1.2.31
./configure --prefix=/usr/local/libpng/
make && make install
9 # jpeg6 (jpegsrc.v6b.tar.gz)
# 报错1:make: ./libtool:Command not found
# make:***[jcapimin.lo] Error 127
# 先安装下面的libtool-1.5.6
# 报错2:checkinghost system type... Invalid configuration `x86_64-unknown-linux-gnu': machine`x86_64-unknown' not recognized
# 解决办法:
# 把/usr/share/libtool/config/config.guess 覆盖到相关软件自带的config.guess
# 把/usr/share/libtool/config/config.sub 覆盖到相关软件自带的config.sub
mkdir /usr/local/jpeg6
mkdir /usr/local/jpeg6/bin
mkdir /usr/local/jpeg6/lib
mkdir /usr/local/jpeg6/include
mkdir -p /usr/local/jpeg6/man/man1
cd /lamp/jpeg-6b
./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static #建立动态 静态库
make && make install
10 # libtool-2.4.2
yum –y install libtool-2.4.2 //从光盘安装
cd /lamp/jpeg-6b
cp /usr/share/libtool/config/config.sub ./
cp /usr/share/libtool/config/config.guess ./
11 # freetype-2.3.5
cd /lamp/freetype-2.3.5
./configure --prefix=/usr/local/freetype/
make && make install
----------------------- Apache2安装命令 --------------------------
cd /lamp/httpd-2.4.7
./configure --prefix=/usr/local/apache2/ --sysconfdir=/usr/local/apache2/etc/ --with-include-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared
make && make install #编译与安装
可能会报错
(1) ARP requested but not found at./srclib/. …and apr-util
解决:需要下面两个包
apr-1.4.6.tar.bz2
apr-util-1.4.1.tar.bz2
执行
cd /lamp
cp -r apr-1.4.6 /lamp/httpd-2.4.7/srclib/apr
cp -r apr-util-1.4.1 /lamp/httpd-2.4.7/srclib/apr-util
(2) Configure.error:pcre-config for libpcre not found….
解决:安装pcre-8.34
./configure && make && make install
启动apache
/usr/local/apache2/bin/apachectl start
查看apache
1)查看端口命令:
netstat -tlun | grep :80 #端口80需要正在listen
2)在浏览器输入ip查看
3)或输入命令:
ps aux | grep httpd
设置开机自启动
vim /etc/rc.local # 在此文件中加入以下内容
/usr/local/apache2/bin/apachectl start
------------- mysql ----------------
#安装 ncurses
yum -y install ncurses-devel
# 安装cmake 和 bison
Mysql 在5.5以后不再使用./configure工具进行编译安装,被cmake替代。
Bison用于自动生成语法分析器程序,可用于所有常见的操作系统
yum -y install cmake
yum -y install bison
# 安装MySQL
groupadd mysql
useradd -g mysql mysql # -g 添加用户同时把用户给指定组
cd /lamp/mysql-5.6.15
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DEXTAR_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL _INFILE=1 -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306
make && make install
# 如果报错
rm CMakeCache.txt # 清除缓存
# 配置
cd /usr/local/mysql
chown -R mysql . # 递归修改当前目录的属主
chgrp -R mysql . # 递归修改当前目录的所属组
# 创建数据库授权表,初始化数据库
/usr/local/mysql/scripts/mysql_install_db --user=mysql
#完成之后再将属主更改回来
chown -R root . # 注意点
chown -R mysql data
# 将官方配置文件拷贝到系统目录下 并改名
cp support-files/my-default.cnf /etc/my.cnf
二次授权
/usr/local/mysql/scripts/mysql_install_db --user=mysql
启动mysql服务
1 用源代码的方式去使用和启动mysql
/usr/local/mysql/bin/mysqld_safe --user=mysql &
2 开机自启动
vim /etc/rc.local
/usr/local/mysql/bin/mysqld_safe --user=mysql &
3 设定mysql密码
/usr/local/mysql/bin/mysqladmin -uroot password 123456
# 清空输入历史
history -c
# 登录:
/usr/local/mysql/bin/mysql -u root -p
输入密码
\h 获得帮助信息
\s 字符集的配置
show databases; # 查看现有的库;
quit #退出
--------------- PHP 安装 --------------
# 安装辅助软件
yum -y install libtool*
# 安装php
cd /lamp/php-7.0.25
./configure --prefix=/usr/local/php/ --with-config-file-path=/usr/local/php/etc/ --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml -dir=/usr/local/libxml2/ --with-jpeg-dir=/usr/local/jpeg6/ --with-png-dir=/usr/local/libpng/ --with-freetype-dir=/usr/local/freetype/ --with-mcrypt=/usr/local/libmcrypt/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets --with-pdo-mysql=/usr/local/mysql --with-gd --without-pear
make && make install
# 生成php.ini 的配置文件
mkdir /usr/local/php/etc/
cp /lamp/php-7.0.25/php.ini-production /usr/local/php/etc/php.ini
# 测试Apache 与PHP的连通性,看apache能否解析php文件
vim /usr/local/apache2/etc/httpd.conf
# 添加如下内容:
AddType application/x-httpd-php.php.phtml
AddType application/x-httpd-php-source.phps
# 重启apache
/usr/local/apache2/bin/apachectl stop
/usr/local/apache2/bin/apachectl start
# 写个简单的php测试
vim /usr/local/apache2/htdocs/test.php
<?
phpinfo();
?>
# 用浏览器访问(ip)/test.php
# 会看到编译命令、安装模块等信息 表示php安装成功
# 结束