了解LAMP:
LAMP 是指Linux(操作系统)+ Apache (HTTP 服务器)+ MySQL(数据库)和 PHP(网络编程语言),一般用来建立 web 应用平台。和 Java/J2EE 架构相比, LAMP 具有 Web 资源丰富、轻量、快速开发等特点;与微软的 .NET 架构相比,LAMP具有通用、跨平台、高性能、低价格的优势。因此 LAMP 无论是性能、质量还是价格都是企业搭建网站的首选平台。
以下操作皆是在Linux系统下完成
安装Linux系统(实验实验采用CentOS7.3)
注:此处略过,没有基础的小伙伴可以参考安装Linux的文章
安装apache服务
准备源码包:httpd-2.4.25.tar.gz(此参考文档使用源码包)
挂载系统盘安装服务依赖包
- 挂载系统盘安装服务依赖包
mount /dev/sr0 /mnt rpm -ivh /mnt/Packages/apr-1.4.8-3.el7.x86_64.rpm rpm -ivh /mnt/Packages/apr-devel-1.4.8-3.el7.x86_64.rpm rpm -ivh /mnt/Packages/cyrus-sasl-devel-2.1.26-20.el7_2.x86_64.rpm rpm -ivh /mnt/Packages/expat-devel-2.1.0-8.el7.x86_64.rpm rpm -ivh /mnt/Packages/libdb-devel-5.3.21-19.el7.x86_64.rpm rpm -ivh /mnt/Packages/openldap-devel-2.4.40-13.el7.x86_64.rpm rpm -ivh /mnt/Packages/apr-util-devel-1.5.2-6.el7.x86_64.rpm rpm -ivh /mnt/Packages/apr-util-1.5.2-6.el7.x86_64.rpm rpm -ivh /mnt/Packages/pcre-devel-8.32-15.el7_2.1.x86_64.rpm rpm -ivh /mnt/Packages/pcre-8.32-15.el7_2.1.x86_64.rpm
- 卸载光盘并挂载httpd所在的光盘镜像
1. umount /dev/sr0 2. eject
在虚拟机中挂载httpd的镜像
1. tar zxf /mnt/httpd-2.4.25.tar.gz -C /usr/src 2. 3. cd /usr/src/httpd-2.4.25/
4.安装httpd服务
进行编译:
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
安装:
make && make install
5.优化路径
添加软链接:
ln -s /usr/local/httpd/bin/* /usr/local/bin
- 安装MySQL数据库
- 1.查询是否安装MySQL
rpm -q mysql-server mysql
2.挂载系统盘安装ncurses-devel
1. mount /dev/sr0 /mnt 2. 3. rpm -ivh /mnt/Packages/ncurses-devel-5.9-13.20130511.el7.x86_64.rpm
3.使用源码包安装cmake
1. tar zxf /mnt/cmake-2.8.6.tar.gz -C /usr/src 2. 3. cd /usr/src/cmake-2.8.6 4. 5. ./configure 6. 7. gmake && gmake install
4.创建mysql用户
1. groupadd mysql 2. 3. useradd -M -g mysql mysql
5.安装源码包MySQL
1. tar zxf /mnt/mysql-5.6.36.tar.gz -C /usr/src 2. 3. cd /usr/src/mysql-5.6.36/
6.利用cmake配置
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all
7.编译安装
make && make install
8.配置mysql
设置权限
chown -R mysql:mysql /usr/local/mysql
Centos7默认的数据库是mariadb,默认的配置文件/etc/my.cnf,所以如果系统默认安装了mariadb,则要先删除/etc/my.cnf,然后复制mysql源码包路径下提供的样例
1. rm -rf /etc/my.cnf 2. 3. cp /usr/src/mysql-5.6.36/support-files/my-default.cnf /etc/my.cnf
8.初始化数据库,用mysql用户身份初始化数据库
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
9. 优化路径
1. echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile 2. 3. ./etc/profile
10. 添加系统服务
1. cp /usr/src/mysql-5.6.36/support-files/mysql.server /etc/init.d/mysqld 2. 3. chmod +x /etc/init.d/mysqld 4. 5. chkconfig --add mysqld
11.启动MySQL服务
systemctl start mysqld
4.安装PHP编程语言
1.卸载通过rpm安装的php包
rpm -e php php-cli php-ldap php-common php-mysql --nodeps
2.挂载系统盘,安装依赖包
umount /dev/cdrom eject mount /dev/cdrom /mnt rpm -ivh /mnt/Packages/zlib-devel-1.2.7-17.el7.x86_64.rpm rpm -ivh /mnt/Packages/xz-devel-5.2.2-1.el7.x86_64.rpm rpm -ivh /mnt/Packages/libxml2-devel-2.9.1-6.el7_2.3.x86_64.rpm umount /dev/cdrom eject
#其中,Libxml2用于访问xml文件,zlib-devel为解压缩工具
安装扩展工具
1.安装libcrypt
mount /dev/cdrom /mnt tar zxf /mnt/libmcrypt-2.5.8.tar.gz -C /usr/src cd /usr/src/libmcrypt-2.5.8 ./configure && make && make install ln -s /usr/local/lib/libmcrypt.* /usr/lib/
2.安装mhash
tar zxf /mnt/mhash-0.9.9.9.tar.gz -C /usr/src cd /usr/src/mhash-0.9.9.9/ ./configure && make && make install ln -s /usr/local/lib/libmhash* /usr/lib/
3.安装mcrypt
tar zxf /mnt/mcrypt-2.6.8.tar.gz -C /usr/src cd /usr/src/mcrypt-2.6.8/ export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH ./configure && make && make install
4.安装php
tar zxf /mnt/php-5.5.38.tar.gz -C /usr/src cd /usr/src/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 make && make install
上述配置命令中,各选项的含义如下:
--prefix:指定将PHP程序安装到哪个目录下,如/usr/ local/php5。
--with-mcrypt:加載数据加密等扩展工具支持。
--with-apxs2:设置 Apache HTTP Server提供的apxs模块支持程序的文件位置。 --enable-so
--with-mysql:设置MySQL数据库服务程序的安装位置。
--with-mysqli:添加 mysqli扩展支持。包含访问的mysql的一些命令
--with-config--file-path:设置PHP的配置文件php.ini将要存放的位置。
--enable-mbstring:启用多字节字符串功能,以便支持中文等代码。
5.创建php配置文件
cp /usr/src/php-5.5.38/php.ini-development /usr/local/php5/php.ini
6.修改php.ini
vim /usr/local/php5/php.ini
short_open_tag = On 将short_open_tag=Off改成On//允许识别PHP短语法标记,即<?…?>
extension=php_mysqli.dll --添加mysql支持(修改或添加均可)
修改httpd.conf配置文件
1.添加主页索引
vim /usr/local/httpd/conf/httpd.conf
....................................
LoadModule php5_module modules/libphp5.so #默认存在 加载php模块
<IfModule dir_module>
DirectoryIndex index.html index.php #修改 定义主页索引
</IfModule>
AddType application/x-httpd-php .php #添加 定义php文件类型
.........................................................................
2.重启httpd
/usr/local/httpd/bin/apachectl restart
四、测试
1.测试PHP网页能否正确显示
1)编写php网页
vim /usr/local/httpd/htdocs/test1.php
<?php
phpinfo();
?>
2). 在客户机上通过浏览器访问测试网页,
2. 测试PHP网页能否访问 MYSQL数据库
systemctl start mysqld mysqladmin -u root password ‘123456’ vim /usr/local/httpd/htdocs/test2.php
<?php
$link=mysqli_connect('localhost','root','123456');
if($link) echo "恭喜你,数据库连接成功了!!";
mysqli_close($link);
?>
3. 在客户机上通过浏览器访问测试网页
如http://192.168.1.1/test2.php若能看到成功连接的提示信息
五、部署mysqladmin
1. 解包并复制到网站目录
tar zxf /mnt/phpMyAdmin-4.7.2-all-languages.tar.gz -C /usr/src
mv /usr/src/phpMyAdmin-4.7.2-all-languages /usr/local/httpd/htdocs/phpMyAdmin
2. 建立配置文件 config.inc.php
1. cd /usr/local/httpd/htdocs/phpMyAdmin/ 2. 3. cp config.sample.inc.php config.inc.php
3. 访问 phpmyadmin的Web管理界面