Linux—LAMP架构(手工编译)
一.概念:
1.LAMP架构是目前成熟的企业网站应用模式之一,是协同工作的一整套系统和相关软件,且能够提供动态web站点服务以及应用开发环境。 LAMP包括Linux操作系统、Apache网站服务器、MySql数据库、PHP(或perl、Python)网页编程语言
2.其中apache和mysql的安装没有顺序要求,但是PHP的安装必须放到最后,负责沟通wed服务器和数据库系统以协同工作。
3.安装环境获取Discuz_X2.5_SC_UTF8.zip mysql-5.6.26.tar.gz apr-1.6.2.tar.gz httpd-2.4.29.tar.bz2 php-5.6.11.tar.bz2 apr-util-1.6.0.tar.gz等安装包。
二.安装Apache网站服务
1.准备安装包:
2.解压缩包:
[root@localhost mnt]# tar zxvf apr-1.6.2.tar.gz -C /opt
[root@localhost mnt]# tar zxvf apr-util-1.6.0.tar.gz -C /opt
[root@localhost mnt]# tar jxvf httpd-2.4.29.tar.bz2 -C /opt
[root@localhost mnt]# cd /opt
[root@localhost mnt]# mv apr-1.6.2 httpd-2.4.29/srclib/apr
[root@localhost mnt]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util
3.安装apache环境包:
[root@localhost opt]# yum -y install \
> gcc \
> gcc-c++ \
> make \
> pcre-devel \
> expat-devel \
> perl
4.配置apache服务
[root@localhost opt]# cd httpd-2.4.29
[root@localhost httpd-2.4.29]# ./configure \
> --prefix=/usr/local/httpd \
> --enable-so \
> --enable-rewrite \
> --enable-charset-lite \
> --enable-cgi
1. //--prefix,指明安装路径
2. //--enable-so,启用核心模块
3. //--rewrite,启用网页地址重写功能
4. //--charset-lite,启用字符集
5. //--cgi,启用CGI脚本,通用网关接口
5.编译以及安装
[root@localhost httpd-2.4.29]# make && make install
6.添加启动脚本文件
[root@localhost httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[root@localhost httpd-2.4.29]# vi /etc/init.d/httpd
将httpd加入到SERVICE管理器:
[root@localhost httpd-2.4.29]# chkconfig --add httpd
7.修改配置文件
[root@localhost httpd-2.4.29]# vi /usr/local/httpd/conf/httpd.conf
8.创建软连接,优化
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/
9.关闭防火墙
[root@localhost httpd-2.4.29]# systemctl stop firewalld.service
[root@localhost httpd-2.4.29]# setenforce 0
10.开启服务
[root@localhost httpd-2.4.29]# service httpd start
11.查看监听端口
[root@localhost httpd-2.4.29]# netstat -anpt | grep 80
tcp 0 0 192.168.88.137:80 0.0.0.0:* LISTEN 69164/httpd
12.验证:
三.安装MySQL服务
1.安装环境包:
[root@localhost ~]# yum install -y ncurses-devel autoconf cmake
2.解压
[root@localhost ~]# cd /mnt
[root@localhost mnt]#
[root@localhost mnt]# tar xzvf mysql-5.6.26.tar.gz -C /opt
3.配置
[root@localhost mysql-5.6.26]# cd /opt/mysql-5.6.26
[root@localhost mysql-5.6.26]# cmake \
> -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
> -DDEFAULT_CHARSET=utf8 \
> -DDEFAULT_COLLATION=utf8_general_ci \
> -DEXTRA_CHARSETS=all \
> -DSYSCONFIDIR=/etc \
> -DMYSQL_DATADIR=/home/mysql/ \
> -DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock
//-DCMAKE_INSTALL_PREFIX指定路径
//-DDEFAULT_CHARSET字符集
//-DDEFAULT_COLLATION通用字符集
//-DEXTRA_CHARSETS扩展字符集
//-DSYSCONFIDIR配置文件的目录
//-DMYSQL_DATADIR数据文件目录
//-DMYSQL_UNIX_ADDR通信文件,定义连接数据库的文件,服务启动之后才会生成文件
4.编译以及安装
[root@localhost httpd-2.4.29]# make && make install
5.覆盖原有配置文件:
[root@localhost mysql-5.6.26]# cp support-files/my-default.cnf /etc/my.cnf
cp:是否覆盖"/etc/my.cnf"? y
[root@localhost mysql-5.6.26]#
6.添加启动脚本
[root@localhost mysql-5.6.26]# cp support-files/mysql.server /etc/init.d/mysqld
7.添加权限和服务
[root@localhost mysql-5.6.26]# chmod 755 /etc/init.d/mysqld
[root@localhost mysql-5.6.26]# chkconfig --add /etc/init.d/mysqld
[root@localhost mysql-5.6.26]# chkconfig mysqld --level 35 on
8.修改环境变量
[root@localhost mysql-5.6.26]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
[root@localhost mysql-5.6.26]# source /etc/profile
[root@localhost mysql-5.6.26]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin
9.添加管理用户
[root@localhost mysql-5.6.26]# useradd -s /sbin/nologin mysql
[root@localhost mysql-5.6.26]# chown -R mysql:mysql /usr/local/mysql/
10配置数据库(初始化数据库)
[root@localhost local]# /usr/local/mysql/scripts/mysql_install_db \
> --user=mysql \
> --ldata=/var/lib/mysql \
> --basedir=/usr/local/mysql \
> --datadir=/home/mysql
创建通信文件的软链接
[root@localhost mysql-5.6.26]# ln -s /var/lib/mysql/mysql.sock /home/mysql/mysql.sock
11.修改启动脚本
[root@localhost mysql-5.6.26]# vi /etc/init.d/mysqld
12.启动服务,并查看端口
[root@localhost mysql-5.6.26]# service mysqld start
Starting MySQL. SUCCESS!
[root@localhost mysql-5.6.26]# netstat -anpt | grep 3306
tcp6 0 0 :::3306 :::* LISTEN 84703/mysqld
13.给创建的mysql用户设置密码
[root@localhost mysql-5.6.26]# mysqladmin -u root -p password "abc123"
Enter password:
Warning: Using a password on the command line interface can be insecure.
[root@localhost mysql-5.6.26]#
14.进数据库,验证结果
四.安装PHP
1.安装环境
[root@localhost ~]# yum -y install \
> gd \
> libpng \
> libpng-devel \
> pcre \
> pcre-devel \
> libxml2-devel \
> libjpeg-devel
2.解压
[root@localhost ~]# cd /mnt
[root@localhost mnt]# tar xjvf php-5.6.11.tar.bz2 -C /opt
3.配置
[root@localhost mnt]# cd /opt
[root@localhost opt]# ls
httpd-2.4.29 mysql-5.6.26 php-5.6.11 rh
[root@localhost opt]# ^C
[root@localhost opt]# cd php-5.6.11
[root@localhost php-5.6.11]#
[root@localhost php-5.6.11]# ./configure \
> --prefix=/usr/local/php5 \
> --with-gd \
> --with-zlib \
> --with-apxs2=/usr/local/httpd/bin/apxs \
> --with-mysql=/usr/local/mysql \
> --with-config-file-path=/usr/local/php5 \
> --enable-mbstring
//–with-gd是图片库
//–with-zlib支持压缩
//–with-apxs2Apache服务
//–with-mysql设置mysql服务
//–with-config-file-path,设置PHP的配置文件php.ini的位置
//–enable-mbstring,启用字符串
4.编译以及安装
[root@localhost php-5.6.11]# make && make install
5.只配置文件生成软链接
[root@localhost php-5.6.11]# cp php.ini-development /usr/local/php5/php.ini
[root@localhost php-5.6.11]# ln -s /usr/local/php5/bin/* /usr/local/bin/
[root@localhost php-5.6.11]# ln -s /usr/local/php5/sbin/* /usr/local/sbin/
6.在apache中添加php功能
[root@localhost php-5.6.11]# vi /etc/httpd.conf
7.开启服务
[root@localhost php-5.6.11]# service httpd stop
[root@localhost php-5.6.11]# service httpd start
8.编辑apache
[root@localhost php-5.6.11]# vi /usr/local/httpd/htdocs/index.php