(写在前面:本篇内容较长,请小伙伴备好咖啡或红牛食用) 源码包(无密码): https://pan.baidu.com/s/1W8WQ0RQGGY9_iKiskEdOoQ&shfl=sharepset
LAMP平台概述
目前最为成熟的一种企业网站应用模式,可提供动态Web站点应 用及开发环境
构成组件
Linux、Apache、MySQL、 PHP/Perl/Python
LAMP的优势
成本低廉 可定制、易于开发
编译安装实验步骤
第一步:通过Windows下载并共享LAMP软件包
第二步:在Linux虚拟机上远程获取共享
[root@lamp ~]# smbclient -L //192.168.10.37/
Sharename Type Comment
--------- ---- -------
LAMP-C7 Disk
[root@lamp ~]# mount.cifs //192.168.10.37/LAMP-C7 /mnt //远程挂载软件包到/mnt目录
[root@lamp ~]# cd /mnt //进入/mnt目录
[root@lamp mnt]# ls //查看获取到的源码包
apr-1.6.2.tar.gz install_lamp.sh
apr-util-1.6.0.tar.gz mysql-5.6.26.tar.gz
Discuz_X2.5_SC_UTF8.zip php-5.6.11.tar.bz2
httpd-2.4.29.tar.bz2
第三步:编译并安装Apache
1.先将源码包解压到/opt目录中
[root@lamp mnt]# tar zxvf apr-1.6.2.tar.gz -C /opt/
...
[root@lamp mnt]#tar zxvf apr-util-1.6.0.tar.gz -C /opt/
....
[root@lamp mnt]#tar jxvf httpd-2.4.29.tar.bz2 -C /opt/
...
[root@lamp mnt]# cd /opt //进入/opt目录
[root@lamp opt]# ls //查看解压的文件
apr-1.6.2 apr-util-1.6.0 httpd-2.4.29 rh
2.移动httpd组件包并安装编译工具
[root@lamp opt]# mv apr-1.6.2/ httpd-2.4.29/srclib/apr
[root@lamp opt]# mv apr-util-1.6.0/ httpd-2.4.29/srclib/apr-util
[root@lamp opt]# yum -y install \
gcc \ //c语言
gcc-c++ \ //c++语言
make \ //编译工具
pcre-devel \ //pcre语言工具
expat-devel \ //识别标签性语言工具
perl //perl编译器
3.配置安装目录及模块
[root@lamp opt]# cd /opt/httpd-2.4.29/
[root@lamp httpd-2.4.29]#./configure \ //配置
> --prefix=/usr/local/httpd \ //指定安装路径
> --enable-so \ //apache核心模块开启
> --enable-rewrite \ //开启重写功能,防盗链
> --enable-charset-lite \ //支持字符集,简体中文
> --enable-cgi //通用网关接口
...
4.编译与安装
[root@lamp httpd-2.4.29]# make //生成可执行的二进制文件
...
[root@lamp httpd-2.4.29]# make install //复制二进制文件到系统,配置应用环境
...
5.替换启动脚本
[root@lamp httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd //复制apache启动脚本覆盖httpd原始的启动脚本
6.配置httpd文件参数
[root@lamp httpd-2.4.29]# vim /etc/init.d/httpd
#!/bin/sh
# chkconfig: 35 85 21
# description: Apache is a World Wide Web server //在#!/bin/sh下行插入这两行内容
[root@lamp httpd-2.4.29]# chkconfig --add httpd //将httpd加入到SERVICE管理器中
[root@lamp httpd-2.4.29]# vim /usr/local/httpd/conf/httpd.conf
输入/ServerName,找到:ServerName www.example.com:80 把前面的#号注释删除 //www.example.com域名可以自行修改,此处保留原有不变
输入/Listen,查找80端口监听,并开启监听本主机的80端口 Listen 192.168.235.137: 80 //监听地址根据各设备IP地址而定
#Listen 192.168.235.137:80
Listen 80
[root@lamp httpd-2.4.29]# httpd -t //检查配置文件语法
Syntax OK
7.创建软链接,方便管理
[root@lamp httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/
[root@lamp httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/
8.关闭防火墙并开启服务
[root@lamp httpd-2.4.29]# systemctl stop firewalld.service
[root@lamp httpd-2.4.29]# setenforce 0
[root@lamp httpd-2.4.29]# service httpd start
[root@lamp httpd-2.4.29]# netstat -ntuap | grep httpd
tcp6 0 0 :::80 :::* LISTEN 73975/httpd
第四步:编码安装MYSQL(注意目录切换)
[root@lamp mnt]# yum install -y ncurses-devel autoconf cmake //安装环境包和Cmake工具包
[root@lamp mnt]# tar zxvf mysql-5.6.26.tar.gz -C /opt/ //解压数据库的软件包解压缩到/opt目录
[root@lamp mnt]# cd /opt //进入/opt目录查看解压文件
[root@lamp opt]# ls
httpd-2.4.29 mysql-5.6.26 rh
[root@lamp opt]#cd /opt/mysql-5.6.26/ //进入数据库目录
[root@lamp 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 //定义sock文件连接数据库文件
[root@lamp mysql-5.6.26]# make
...
[root@lamp mysql-5.6.26]# make install
...
[root@lamp mysql-5.6.26]# cp support-files/my-default.cnf /etc/my.cnf
cp:是否覆盖"/etc/my.cnf"? yes
[root@lamp mysql-5.6.26]# cp support-files/mysql.server /etc/init.d/mysqld
cp:是否覆盖"/etc/init.d/mysqld"? yes
[root@lamp mysql-5.6.26]# chmod 755 /etc/init.d/mysqld //授予执行权限
[root@lamp mysql-5.6.26]# chkconfig --add /etc/init.d/mysqld
//将数据库服务添加到管理器中
[root@lamp mysql-5.6.26]# chkconfig mysqld --level 235 on
//开启数据库的2,3,5运行级别
[root@lamp mysql-5.6.26]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile //启用数据库命令到系统环境变量
[root@lamp mysql-5.6.26]# source /etc/profile //启用系统环境变量
[root@lamp mysql-5.6.26]# echo $PATH //查看系统环境变量
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/mysql/bin
[root@lamp mysql-5.6.26]# useradd -s /sbin/nologin mysql //创建mysql程序用户,禁止登录数据库
[root@lamp mysql-5.6.26]# chown -R mysql:mysql /usr/local/mysql/ //给/usr/local/mysql/目录下所有用户提权
[root@lamp mysql-5.6.26]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --ldata=/var/lib/mysql --basedir=/usr/local/mysql --datadir=/home/mysql
//初始化数据库,并指定用户数据信息到指定目录
[root@lamp mysql-5.6.26]# vim /etc/init.d/mysqld //编辑数据库配置文件
在第46行指定数据库本地路径
basedir=/usr/local/mysql
在第47行指定数据库存放位置
datadir=/home/mysql
[root@lamp mysql-5.6.26]# service mysqld start //开启数据库服务
Starting MySQL. SUCCESS!
[root@lamp mysql-5.6.26]# netstat -anpt | grep 3306 //查看数据库的监听端口3306
tcp6 0 0 :::3306 :::* LISTEN 90105/mysqld
[root@lamp mysql-5.6.26]# mysqladmin -u root -p password "abc123" //设定数据库的root用户的密码
第五步:安装PHP(注意目录切换)
[root@lamp ~]# yum -y install \
gd \ //图像化处理,
libpng \ //支持PNG图片
libpng-devel \
pcre \
pcre-devel \
libxml2-devel \ //支持解析,标签性语言
libjpeg-devel //支持jpg图片格式
[root@lamp ~]# cd /mnt
[root@lamp mnt]# tar jxvf php-5.6.11.tar.bz2 -C /opt/ //解压PHP源码包
[root@lamp mnt]# cd /opt/php-5.6.11/ //进入/opt/php-5.6.11/目录
[root@lamp 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 //配置PHP相关组件及关联数据库与httpd的服务
[root@lamp php-5.6.11]# make //编译,注意编译完切勿进行测试
...
[root@lamp php-5.6.11]# make install //安装
...
[root@lamp php-5.6.11]# cp php.ini-development /usr/local/php5/php.ini
//复制配置文件到php.ini目录中
[root@lamp php-5.6.11]# ln -s /usr/local/php5/bin/* /usr/local/bin/
//建立PHP命令软链接
[root@lamp php-5.6.11]# vim /etc/httpd.conf
//编辑httpd配置文件
//在第256行的DirectoryIndex index.html中将index.html替换成index.php即可
255 <IfModule dir_module>
256 DirectoryIndex index.php
257 </IfModule>
//再在后面换行追加以下两行条目授予PHP执行权限
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
[root@lamp php-5.6.11]# vim /usr/local/httpd/htdocs/index.php //编辑PHP首页文件,写入以下信息
<?php
phpinfo();
?>
[root@lamp php-5.6.11]# service httpd restart //重启httpd服务
验证PHP首页 在源IP地址后加入/index.php即可登录到指定的PHP首页
第六步:安装Discuz论坛
[root@lamp php-5.6.11]#cd /mnt
//进入/mnt目录
[root@lamp mnt]# unzip Discuz_X2.5_SC_UTF8.zip -d /opt/Discuz
//解压论坛组件包到/opt目录
[root@lamp mnt]# cp -r /opt/Discuz/upload/ /usr/local/httpd/htdocs/bbs
//复制/opt目录里的内容到httpd站点的bbs目录中
[root@lamp mnt]# mysql -u root -p
//进入数据库,密码为之前设定的abc23
mysql> create database bbs;
//创建bbs数据库
mysql> GRANT all ON bbs.* TO 'bbsuser'@'192.168.235.137' IDENTIFIED BY 'admin123';
//提权数据库用户bbsuser为管理员并设定密码
mysql> flush privileges;
//刷新数据库
mysql> quit
//退出数据库
[root@lamp mnt]# cd /usr/local/httpd/htdocs/bbs/
//进入bbs目录
[root@lamp bbs]# chown -R daemon ./config/
[root@lamp bbs]# chown -R daemon ./data/
[root@lamp bbs]# chown -R daemon ./uc_client/data/cache/[root@lamp bbs]# chown -R daemon ./uc_server/data/
//为各程序用户提升权限
使用浏览器输入192.168.235.137/bbs开始正式安装Discuz论坛
在设置运行环境选择"全新安装"
安装数据库 在这里一定要注意: 数据服务器:192.168.235.137(此处输入创建数据库主机的IP)
数据库名:bbs
数据库用户名:bbsuser(用户名可在命令行修改)
数据库密码:admin123(密码可在命令行修改)
管理员账号:admin(该账号为默认)
密码:123123(密码可直接在网页设定)
安装成功后进入论坛首页
使用管理员账户登录点击右上方的管理中心即可进行日常管理 等同于进入网页后台的管理中心