LAMP平台部署详细步骤

本文详细介绍了如何在Linux(CentOS7)环境下部署LAMP架构,包括卸载预装的MariaDB,安装MySQL,配置数据库,安装PHP,设置环境,以及部署和测试PHP与MySQL的连接。此外,还讲解了如何部署phpMyAdmin以实现远程管理MySQL数据库。
摘要由CSDN通过智能技术生成

一、LAMP概述

1.1.LAMP平台的构成组件: 

Linux操作系统Linux操作系统是整个LAMP架构的基础部分,提供用于支撑Web站点的操作系统,为其他的组件提供了更好的稳定性、兼容性

Apache网站服务器为LAMP架构的前端,功能强大、稳定性良好(性能优化)

MySQL数据库服务器为LAMP架构的后端,是一款应用非常广泛的数据库系统。在企业网站、业务系统等应用中,各种账户信息、产品信息、客户资料等都可以存储到MySQL数据库

PHP、Perl、Python网页编程语言如今最为常见的就是PHP语言。Python语言现如今多用于自动化运维。

二、LAMP部署

主机IP假设为:192.168.10.1     主机名假设为:abc

2.1.MySQL部署

CentOS7系统默认可能会安装MariaDB,因此查询是否已经以rpm方式安装,若有即卸载。

# rpm -e mariadb

2.安装mysql运行所需依赖软件

# yum install -y gcc gcc-c++ make ncurses-devel autoconf lrzsz

ncurses 字符终端处理库,包括面板和菜单等功能

autoconf //兼容多系统进行make编译

上传 cmake、mysql至服务器(需要用rz命令上传对应的软件压缩包

# tar zxvf cmake-2.8.6.tar.gz -C /usr/src

# cd /usr/src/cmake-2.8.6

# ./configure

# make && make install

3.编译安装mysql

# tar zxf mysql-5.6.36.tar.gz -C /usr/src

# cd /usr/src/mysql-5.6.36/

# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all

-DCMAKE_INSTALL_PREFIX //程序安装路径

-DSYSCONFDIR //程序初始化目录,配置文件存放目录

-DDEFAULT_CHARSET //指定字符集

-DDEFAULT_COLLATION //指定字符集校对规则

-DWITH_EXTRA_CHARSETS //支持额外的字符集

官方对相关配置选项的说明:

https://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html

# make && make install

# useradd -M -s /sbin/nologin mysql   //创建mysql运行用户和组

4.配置mysql

# chown -R mysql:mysql /usr/local/mysql

# cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf //复制mysql主配置文件到运行目录

初始化数据库,以mysql用户运行初始化脚本并制定mysql数据库运行目录和数据存放目录

# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/

--user //指定运行用户

--basedir //指定安装目录

--datadir //指定数据库数据存放位置

修改属主权限

# chown -R root /usr/local/mysql

# chown -R mysql /usr/local/mysql/data

设置变量环境,方便执行mysql命令,若不设置则只能够使用绝对路径命令执行

# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile

# . /etc/profile

添加为系统服务,方便控制mysql服务

# cp /usr/local/mysql/support-files/mysql.server /usr/local/mysql/bin/mysqld.sh

# vim /lib/systemd/system/mysqld.service

[Unit]

Description=Mysql Server

After=mysqld.target

[Service]

User=mysql

Type=forking

PIDFile=/usr/local/mysql/data/(此处为主机名,可用hostname查询主机名,假设为abc).pid

ExecStart=/usr/local/mysql/support-files/mysql.server start

ExecStop=/usr/local/mysql/support-files/mysql.server stop

[Install]

WantedBy=multi-user.target //Minimal 或者桌面/graohical.target

# systemctl daemon-reload //重载systemctl守护进程

# systemctl enable mysqld.service //将mysqld服务设置为开机自启

以下两种方法都可查询开机是否启动:

# systemctl list-unit-files | grep mysqld

# systemctl is-enabled mysqld.service

# systemctl start mysqld

# netstat -anpt | grep mysqld //可查看mysql运行状态,端口号为tcp:3306

管理使用mysql数据库

# mysql -u root -p //u指定用户,p指定密码,默认root无密码,回车即可

# mysqladmin -u root -p password //修改密码为root用户密码为123,需要回车输入原密码,默认密码为空

数据库中所有数据存放在/usr/local/mysql/data/中

通过用户登录mysql界面后需要执行mysql操作语句才能够实现管理mysql数据库

每条语句最后应当加上";" 输入语句可以不区分大小写,但是参数必须区分。

2.2.PHP部署 

php/超文本预处理器是一种通用开源脚本语言,语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,拥有更好的网页执行速度,而且支持绝大多数流行的数据库,主要适用于Web开发领域。

PHP 能做什么? 

PHP 可以生成动态页面内容

PHP 可以创建、打开、读取、写入、关闭服务器上的文件

PHP 可以收集表单数据

PHP 可以发送和接收 cookies

PHP 可以添加、删除、修改您的数据库中的数据

PHP 可以限制用户访问网站上的一些页面

PHP 可以加密数据

2.2.1.部署PHP

1.准备安装环境

卸载之前rpm方式安装的PHP程序

# rpm -e php php-cli php-ldap php-common php-mysql --nodeps

相关组件及依赖包:

# yum install -y zlib-devel libxml2-devel xz-devel

2.安装三个加密扩展工具库:libmcrypt、mhash、mcrypt(同样需要通过rz命令上传对应压缩包)

# tar zxvf libmcrypt-2.5.8.tar.gz -C /usr/src/ //php加密算法扩展库程序

# cd /usr/src/libmcrypt-2.5.8/

# ./configure

# make && make install

# ln -s /usr/local/lib/libmcrypt.* /usr/lib/

# tar zxvf 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/

# cd

# tar zxvf mcrypt-2.6.8.tar.gz -C /usr/src/

# cd /usr/src/mcrypt-2.6.8/

# ./configure //如若提示版本小于2.5,则执行以下命令设置变量重新配置

# vim /etc/profile //编辑系统文件,在最后新起一行加入以下内容:

export LD_LIBRARY_PATH=/usr/local/lib: LD_LIBRARY_PATH

# . /etc/profile

# ./configure //设置变量后重新配置

# make && make install

3.安装PHP

# yum install -y libjpeg-devel libpng-devel freetype-devel libtool* libtool-ltdl* libtool-ltdl-devel GD插件,提供验证码功能

# tar zxf 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-config-file-path=/usr/local/php5 --enable-mbstring --with-png-dir --with-freetype-dir --with-jpeg-dir --with-gd --libdir=/usr/lib64 --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-zip

--prefix:指定安装目录

--with-mcrypt:加载数据加密等扩展工具支持

--with-apxs2:指定apache提供的apxs模块支持程序位置

--with-mysql:指定mysql数据库安装位置

--with-config-file-path:指定php配置文件php.ini将要存放的位置

--enable-mbstring:启用多字符串功能

--with-mysqli:mysql扩展功能

make: *** [sapi/cli/php] 错误 1

# vim Makefile

EXTRA_LIBS = -liconv //88行左右此处添加如下内容: -liconv

或者:

#make clean

#make

# make && make install

4.设置LAMP运行环境

主要设置php.ini,用于确定PHP的运行参数,httpd.conf:用于加载libphp5.so,以便支持PHP网页

1.PHP.ini设置  

PHP的配置文件在解压目录下,有两个配置文件,分别用于开发与生产

/usr/src/php-5.5.38/php.ini-development //开发版,用于测试、学习

/usr/src/php-5.5.38/php.ini-production //生产版,用于生产环境

将PHP.ini配置文件拷贝至安装目录下

# grep -v "^;" /usr/src/php-5.5.38/php.ini-development | grep -v "^$" > /usr/local/php5/php.ini

# vim /usr/local/php5/php.ini

在[PHP] 的下一行加入如下:

default_charset = "utf-8"

file_uploads = On

upload_max_filesize = 2M

max_file_uploads = 20M

post_max_size = 8M

extension = php_mysqli.dll

short_open_tag = On //修改自带的为on

分别是设置默认字符集、允许文件上传、上传文件最大限制、每个请求最多能够上传总数、通过post提交的数据量限制、识别PHP语法标记、以及添加mysql支持

5.添加优化模块(php的补丁包)

# tar zxf zend-loader-php5.5-linux-x86_64_update1.tar.gz -C /usr/src/

# cd /usr/src/zend-loader-php5.5-linux-x86_64/

# cp ZendGuardLoader.so /usr/local/php5/

# vim /usr/local/php5/php.ini //加入优化模块 [PHP]中

zend_extension=/usr/local/php5/ZendGuardLoader.so

zend_loader.enable=1

6.httpd.conf配置调整

# vim /usr/local/httpd/conf/httpd.conf

找到如下项,大概在159行左右,在此项下一行添加如下二行内容:

LoadModule php5_module        modules/libphp5.so

AddType application/x-httpd-php .php //此行为添加项

LoadModule rewrite_module modules/mod_rewrite.so //此行为添加项

找到如下项,大概在261行左右,在末尾加上"index.php",效果如下图

    DirectoryIndex index.html index.php //index.php为后添加

# systemctl restart httpd

2.2.2测试LAMP环境是否可用

1.设置php网页进行测试

# vim /usr/local/httpd/htdocs/test.php

添加如下内容:

<?php

phpinfo( );

?>

用于显示服务器PHP环境信息的网页

客户机进行访问测试:http://192.168.1.10/test.php

2.测试PHP是否能够访问Mysql数据库

# vim /usr/local/httpd/htdocs/test1.php //新建mysql连接网页

以下为php5.3推荐的写法,在5.5中被遗弃,因此在5.5中写以下内容后,虽然能够连接成功,但是会提示"不建议用mysql 而是用mysqli",因此5.5版本的php用第二部分的网页内容,主要是将MySQL改为了MySQLi

5.3适用网页内容:

<?php

$link=mysql_connect('localhost','root','123456'); //设置登录信息,连接mysql

if($link) echo "恭喜你,数据库连接成功!"; //连接成功后返回的结果

mysql_close(); //关闭连接

?>

5.5适用网页内容:

<?php

$link=mysqli_connect('localhost','root','123456');

if($link) echo "恭喜你,数据库连接成功!";

mysqli_close($link);

?>

# mysqladmin -u root -p password //设置mysql密码为 123456

Enter password: //默认密码为空 ,回车即可

New password:

Confirm new password:

客户机进行访问测试:http://192.168.1.10/test1.php

三、LAMP架构应用实例

phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库。借由此Web接口可以成为一个简易方式输入繁杂SQL语法的较佳途径,尤其要处理大量资料的汇入及汇出更为方便。其中一个更大的优势在于由于phpMyAdmin跟其他PHP程式一样在网页服务器上执行,但是您可以在任何地方使用这些程序产生的HTML页面,也就是远端管理MySQL数据库,方便的建立、修改、删除数据库及资料表。也可借由phpMyAdmin建立常用的php语法,方便编写网页时所需要的sql语法正确性。

1.部署phpMyAdmin系统

1.解包并移动至网页根目录

# tar zxf phpMyAdmin-4.7.2-all-languages.tar.gz -C /usr/local/httpd/htdocs/

# cd /usr/local/httpd/htdocs

# mv phpMyAdmin-4.7.2-all-languages/ phpMyAdmin

生成配置文件

# cd phpMyAdmin/

# cp config.sample.inc.php config.inc.php

浏览器访问

http://192.168.1.10/phpMyAdmin/

用户名密码均为mysql系统中的授权信息,如root 123456

出现的问题:

1.在配置php时,如出现"Sorry, I cannot run apxs. Possible reasons follow:"

解决方案:

# vim /usr/local/httpd/bin/apxs

#! /usr/bin/perl -w //将第一行修改为此内容

2.phpmyadmin在web界面进行登录无反应,解决方案:修改系统时间为当前时间即可修改

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux部署LAMP平台的步骤如下: 1. 安装Linux操作系统:选择一款适合自己的Linux发行版,如CentOS、Ubuntu等,进行安装。 2. 安装Apache服务器:使用命令行或包管理器安装Apache服务器,如在Ubuntu中可以使用命令sudo apt-get install apache2安装。 3. 安装MySQL数据库:使用命令行或包管理器安装MySQL数据库,如在Ubuntu中可以使用命令sudo apt-get install mysql-server安装。 4. 安装PHP编程语言:使用命令行或包管理器安装PHP编程语言,如在Ubuntu中可以使用命令sudo apt-get install php安装。 5. 配置Apache服务器:配置Apache服务器,使其支持PHP编程语言和MySQL数据库。可以在Apache配置文件中添加如下代码: ``` # AddHandler php5-script .php # AddType text/html .php # DirectoryIndex index.php ``` 6. 配置MySQL数据库配置MySQL数据库,设置root用户密码、创建数据库等。可以在MySQL命令行中执行如下命令: ``` mysql -u root -p SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password'); CREATE DATABASE dbname; ``` 7. 测试LAMP平台:创建一个简单的PHP页面,并将其保存到Apache服务器的文档根目录中。在浏览器中输入Apache服务器的IP地址或域名,即可访问该页面,测试LAMP平台是否正常工作。 以上是部署LAMP平台的基本步骤,具体的安装和配置过程可能会因Linux发行版的不同而有所不同,需要根据实际情况进行调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值