一、手工编译安装的优点
- 具有较大的自由度,功能可定制
- 可及时获得最新的软件版本
- 普遍适用于大多数Linux版本,便于移植使用
二、 编译安装httpd服务器
2.1 准备工作
- 三个压缩包:apr-util-1.6.0.tar apr-1.6.2.tar httpd-2.4.29.tar
- rpm -e httpd --nodeps ## 忽略软件包依赖性
- 安装工具和环境包
yum -y install
gcc \ ## 支持C语言
gcc-c++ \ ## 支持C++语言
make \ ## 编译
pcre-devel \ ## pcre支持正则表达式的功能
expat-devel \ ## 支持xml格式
perl ## 支持perl语言
2.2 源码编译及安装
tar zxvf apr-1.6.2.tar.gz ## 解压缩
tar zxvf apr-util-1.6.0.tar.gz ## 解压缩
tar jxvf httpd-2.4.29.tar.bz2 ## 解压缩
mv apr-1.6.2 httpd-2.4.29/srclib/apr ## 将解压缩后的包放到httpd-2.4.29/srclib/apr目录下。httpd在安装的时候会自动读取里面的依赖包 注意名称一定要是apr
mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util ## 与上面一样,名称也要注意 是apr-util
cd httpd-2.4.29/
./configure --prefix=/usr/local/httpd --enable-so
--enable-rewrite --enable-charset-lise --enable-cgi
## --prefix= 执行安装路径,配置文件到安装路径那去找
## --enable-so 开启核心模块功能 即web服务--enable-rewrite 重写功能 做apache网站优化的时用 防盗链所使用
#--enable-charset-lise ## 字符集设定
#--enable-cgi ## 底层网关通用接口 是一种规范定义着网站编程语言符合规范(能与浏览器进行交互)
make && make install ## 编译及安装
2.3 确认安装路径及优化执行路径
2.3.1 确认安装结果
ls /usr/local/httpd
2.3.2 优化执行路径
ln -s /usr/local/httpd/bin/* /usr/local/bin ## 建立软连接指到环境变量里面 让apache命令文件够让系统识别 不指 每次都需要敲绝对路径
ls -l /usr/local/bin/httpd /usr/local/bin/apachectl ## 查看链接建立情况
2.4 添加httpd系统服务
#配置启动脚本
[root@localhost httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[root@localhost httpd-2.4.29]# vim /etc/init.d/httpd
#chkconfig: 35 85 21 ## 35级别运行 第85 个启动 第21个关闭
#description: Apache is a World Wide Web server ## 描述性信息 可写可不写
##################设置配置文件#################
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/ ## 建立配置文件的软连接
[root@localhost httpd-2.4.29]# vim /etc/httpd.conf
ServerName www.lamp.com:80 ## 设置域名
Listen 192.168.233.120:80 ## 设置监听地址及端口
#Listen 80 ## IPv6的监听端口 注释掉
#####################命令识别设置################
[root@localhost httpd-2.4.29]# chkconfig --add httpd ## 将httpd服务添加到service管理器
[root@localhost httpd-2.4.29]# systemctl stop firewalld.service ## 关闭防火墙
[root@localhost httpd-2.4.29]# setenforce 0 # 关闭核心防护
[root@localhost httpd-2.4.29]# systemctl start httpd
[root@localhost httpd-2.4.29]# systemctl start httpd
[root@localhost httpd-2.4.29]# netstat -natp | grep 80
tcp6 0 0 :::80 :::* LISTEN 40082/httpd
2.5 通过systemctl 进行管理系统服务
systemctl enable httpd.service
systemctl is-enable httpd.service
三、部署Mysql数据库
3.1 准备工作
mysql-5.6.26.tar ## 准备数据库压缩包‘
[root@localhost mysql]# yum -y install ncurses-devel autoconf cmake ## 安装数据所需工具和环境
安装光盘自带的ncurses-devel包 autoconf 适应多种Unix类系统的shell脚本的工具
安装cmake包
3.2 源码编译及安装
tar zxvf mysql-5.6.26.tar.gz ## 解压musql压缩包
cd mysql-5.6.26 ## 进入mysql数据包
cmake
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=uft8_general_ci -DEXTRA_CHARSETS=all -DSYSCONFIDIR=/etc
-DMYSQL_DATADIR=/home/mysql/ -DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock
## DCMAKE_INSTALL_PREFIX 安装路径 ## DDEFAULT_CHARSET 字符集为uft8 即中文
# -DMYSQL_DATADIR ## 数据库数据管理用户目录 DMYSQL_UNIX_ADDR= 数据库对接目录
make && make install ## 编译及安装
3.3 Mysql配置文件
cp support-files/my-default.cnf /etc/my.cnf ## 利用模板建立配置文件
3.4 添加设置系统服务
cp support-files/mysql.server /etc/init.d/mysqld
cd /etc/init.d/
chmod +x mysqld ## 添加执行权限
chkconfig --level 35 mysqld on ## 设置服务启动级别
echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile ## 将mysql命令添加到全局环境变量
source /etc/profile ## 重新加载全局变量
3.5 初始化数据库
/usr/local/mysql/scripts/mysql_install_db --user=mysql --ldata=/var/lib/mysql --basedir=/usr/local/mysql
--datadir=/home/mysql ## --user 用户 --basedir ## 指定数据库目录 datadir # 数据的存放位置
- /home/mysql/mysql.sock ## 通信文件时连接数据库的文件 即使本地连接也得要连接这个文件
没有这个文件无法连接数据库,即使你已经开启服务 这个文件一定要提供权限,属主属组一定要是mysql
3.6 创建用户
useradd -s /sbin/nologin mysql ## 创建不能登录的用户mysql
chown -R mysql:mysql /usr/local/mysql/ ## 修改数据库文件的属主属组
3.7 启动服务 设置数据库root账号密码
[root@localhost init.d]# service mysqld start
Starting MySQL. SUCCESS!
[root@localhost init.d]# mysqladmin -u root -p password "123123"
Enter password: ##输入需要设置的密码
四、PHP安装部署
4.1 准备工作
php-5.6.11.tar ## PHP 压缩包
[root@localhost php]# yum -y install \ ## 安装所需环境及工具包
> gd \
> libpng \
> libpng-devel \ ## 处理图片
> pcre \
> pcre-devel \
> libxml2-devel \
> libjpeg-devel ## 处理图片工具
4.2 源码编译及安装
tar jxvf php-5.6.11.tar.bz2
cd 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
make && make install ## 编译及安装
4.3 优化php
cp php.ini-development /usr/local/php5/php.ini
ln -s /usr/local/php5/bin/* /usr/local/bin/ ## 建立命令软链接
4.4 修改apache配置文件
[root@promote ~]# vim /etc/httpd.conf
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
4.5 修改apache网页
[root@promote htdocs]# vim /usr/local/httpd/htdocs/index.php
<?php
phpinfo()
?>
~
systemctl restart httpd ## 重启服务
4.6 验证php服务是否启动
- 服务启动成功
五、 安装论坛服务
5.1 在mysql数据库创建用户
[root@localhost discuz]# mysql -uroot -p
mysql> create database bbs;
mysql> use bbs;
#设置数据库用户名和密码
mysql> grant all on bbs.* to 'bbsuser'@'%' identified by 'admin123'; ## 把bbs文件里的数据授权给bbsuer
#刷新数据库
mysql> flush privileges; ## 刷新数据库
mysql> quit
5.2 安装论坛服务
Discuz_X2.5_SC_UTF8
unzip Discuz_X2.5_SC_UTF8.zip ## 解压压缩文件
cp -r upload/ /usr/local/httpd/htdocs/bbs ## 复制upload到bbs文件中
- 将bbs下这四个文件的属主修改为daemon
[root@localhost discuz]# cd /usr/local/httpd/htdocs/bbs/
[root@localhost bbs]# chown -R daemon ./config
[root@localhost bbs]# chown -R daemon ./data
[root@localhost bbs]# chown -R daemon ./uc_client/
[root@localhost bbs]# chown -R daemon ./uc_server/data/
5.3 进入网站安装论坛
- http://192.168.233.120/bbs 进入安装步骤