LAMP平台部署
LAMP部署需要预装1.Apache网站服务
2.Mysql数据库服务
3.PHP网页服务
一.预装Apache
Apache需要的软件包
1.挂载光盘 用YUM安装
- 源码编译及安装
1.解包
[root@TJH~]# tar zxf httpd-2.4.25.tar.gz -C /usr/src/
[root@TJH ~]# cd /usr/src/httpd-2.4.25/
2.配置
[root@TJH httpd-2.4.25]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
–prefix:指定将httpd服务程序安装到哪个目录,如/usr/local/httpd。
–enable-so:启用动态加载模块支持,使httpd具备进一步扩展功能的能力。
–enable-rewrite:启用网页地址重写功能,用于网站优化及目录迁移维护。
–enable-charset-lite:启动字符集支持,以便支持使用各种字符集编码的网页。
–enable-cgi:启用CGI脚本程序支持,便于扩展网站的应用访问能力。
编译及安装
[root@TJH httpd-2.4.25]#make && make install
3.确认安装结果
[root@TJH~]# ls /usr/local/httpd/
bin cgi-bin error icons lib man modules
build conf htdocs include logs manual
4.优化执行路径
[root@TJH ~]# ln -s /usr/local/httpd/bin/* /usr/local/bin/
[root@TJH ~]# ls -l /usr/local/bin/httpd /usr/local/bin/apachectl
5.添加httpd系统服务
*以便通过chkconfig进行管理
[root@TJH ~]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[root@TJH~]# vi /etc/init.d/httpd
#!/bin/bash
chkconfig: 35 85 15
root@TJH ~]# chkconfig --add httpd 设置为开机自启动
6.启动httpd服务并设为开机自启动
[root@TJH ~]# systemctl start httpd
[root@TJH ~]# systemctl enable httpd
二.Mysql 安装
1.[root@TJH ~]# yum -y install ncurses-devel
#解压cmake,安装基础环境
[root@TJH~]# tar zxf cmake-2.8.6.tar.gz -C /usr/src/
[root@TJH ~]# cd /usr/src/cmake-2.8.6
[root@TJH cmake-2.8.6~]./configure
[root@TJH cmake-2.8.6~] gmake && gmake install
/源码编译及安装
- 创建运行用户
[root@TJH cmake-2.8.6~]groupadd mysql
[root@TJH cmake-2.8.6~]useradd -M -s /sbin/noligin mysql -g mysql - 解包
[root@TJH ~] tar zxvf /root/cmake-2.8.6.tar.gz -C /usr/src
[root@TJH ~] cd /usr/src/cmake-2.8.6
[root@TJH cmake-2.8.6~]#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DSYSCONFDIR=/etc/
#cmake进行配置mysql
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql #指定安装目录
-DDEFAULT_CHARSET=utf8 #指定字符集为utf8
-DDEFAULT_COLLATION=utf8_general_ci ##指定字符校验
-DWITH_EXTRA_CHARSETS=all ##支持额外字符集
-DSYSCONFDIR=/etc/ ##指定配置文件位置
#配置,编译安装
[root@TJH cmake-2.8.6~]# make && make install
3. 安装后的调整
[root@TJH cmake-2.8.6~] chowm -R mysql:mysql /usr/local/mysql
复制配置文件
[root@TJH cmake-2.8.6~] rm -rf /usr/src/mysql-5.6.36/etc/my.cnf
[root@TJH cmake-2.8.6~]# cp /usr/src/mysql-5.6.36/support-files/my-default.cnf /etc/my.cnf
初始化数据库
root@localhost cmake-2.8.6~]# /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
.优化PATH路径,执行命令时方便,单引号双引号都行
[root@localhost cmake-2.8.6~]# echo " PATH=$PATH:/usr/local/mysql/bin" >>/etc/profile
[root@localhost cmake-2.8.6~]# ./etc/profile ##执行文件
添加系统服务
[root@TJH cmake-2.8.6~]cp support-files/mysql.server /usr/local/mysql/bin/mysqld.sh
[root@TJH cmake-2.8.6~]chmod +x /usr/local/mysql/bin/mysqld.sh
[root@TJH cmake-2.8.6~]vim /usr/lib/systemd/systemmysqld.service
[Unit]
Description=Mysql Server
After=network.target
[Service]
User=mysql
Group=mysql
Type=forking
ExecStart=/usr/local/mysql/bin/mysqld.sh start
ExecStop=/usr/local/mysql/bin/mysqld.sh stop
[Install]
WantedBy=mutil-user.target
重新启动服务
[root@TJH ~] systemctl start mysqld
[root@TJH ~] systemctl enable mysqld
验证:数据库mysql的默认端口3306
[root@localhost ~]# netstat -anpt | grep mysqld
三、安装PHP软件包
1.准备工作
确认没有使用RPM方式安装php及相关依赖包(避免程序冲突)
[root@TJH ~]# rpm -qa | grep php*
[root@TJH ~]# yum install -y libxml2 libxml2-devel zlib-devel
2.安装扩展工具库
实际环境中,需要安装数据加密工具libmcrypt、mhash、mcrypt
[root@TJH ~]# tar zxf libmcrypt-2.5.8.tar.gz -C /usr/src
[root@TJH ~]# cd /usr/src/libmcrypt-2.5.8/
[root@TJH libmcrypt-2.5.8~]# ./configure && make && make install
[root@TJH libmcrypt-2.5.8~]# cd
[root@TJH ~]# ln -s /usr/local/lib/libmcrypt.* /usr/lib/
[root@TJH ~]# tar zxf mhash-0.9.9.9.tar.gz -C /usr/src/
[root@TJH ~]# cd /usr/src/mhash-0.9.9.9/
[root@TJH mhash-0.9.9.9~]# ./configure
[root@TJH mhash-0.9.9.9~]# make && make install
[root@TJH ~]# ln -s /usr/local/lib/libmhash.* /usr/lib/
[root@TJH ~]# cd
[root@TJH ~]# tar zxf mcrypt-2.6.8.tar.gz -c /usr/src/
[root@TJH ~]# cd /usr/src/ mcrypt-2.6.8
解决configure报错问题
[root@TJH mcrypt-2.6.8~]# export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
[root@TJH ~]# cd /usr/src/mcrypt-2.6.8/
[root@TJH mcrypt-2.6.8~]# ./configure
[root@TJH mcrypt-2.6.8~]# make && make install
[root@TJH ~]# cd
3.编译安装PHP
[root@TJH ~]# tar zxf php-5.5.38.tar.gz -C /usr/src/
[root@TJH ~]# cd /usr/src/php-5.5.38/
[root@TJH php-5.5.38~]# ./configure --prefix=/usr/local/php5 --with-mcrypt --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-config-file-path=/usr/local/php5 --enable-mbstring
–prefix=/usr/local/php5 【PHP安装目录】
–with-mcrypt 【加载数据加密工具支持】
–with-apxs2=/usr/local/httpd/bin/apxs【apxs模块支持】
–with-mysql=/usr/local/mysql【数据库服务程序安装位置】
–with-mysqli=/usr/local/mysql/bin/mysql_config 添加mysqli扩展支持
–with-config-file-path=/usr/local/php5【php.ini存放位置】
–enable-mbstring【支持多语言】
[root@TJH ~]# make && make install
四、设置LAMP环境
PHP的配置文件php.ini(确定PHP的运行参数)
Apache配置文件httpd.conf(加载libphp5.so模块,以便支持PHP网页)
1.php.ini配置调整
[root@TJH ~]# cp /usr/src/php-5.5.38/php.ini-development /usr/local/php5/php.ini
2.添加ZendGuardLoader优化模块
[root@TJH ~]# tar zxf zend-loader-php5.5-linux-x86_64_update1.tar.gz -C /usr/src
[root@TJH ~]# cd /usr/src/zend-loader-php5.5-linux-x86_64/
[root@TJH zend-loader-php5.5-linux-x86_64~]# cp ZendGuardLoader.so /usr/local/php5/lib/php/
[root@TJH zend-loader-php5.5-linux-x86_64~]# vim /usr/local/php5/php.ini
zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so
zend_loader.enable=1
3.httpd.conf配置调整
*使httpd服务器支持PHP页面解析功能
[root@TJH ~]# vim /usr/local/httpd/conf/httpd.conf
LoadModule php5_module modules/libphp5.so 【这一行必须已经存在,否则需要重新安装PHP】
DirectoryIndex index.html index.php
AddType application/x-httpd-php .php 支持.php网页文件【这一行手动添加】
重启httpd服务
[root@TJH ~]# systemctl restart httpd
测试LAMP协同工作
1.测试PHP网页能否正确显示
建立php测试页面
[root@TJH ~]# cd /usr/local/httpd/htdocs/
[root@TJH ~]# vim test1.php
验证 网页访问成功