centos7部署安装LAMP

centos7 install LAMP

LAMP四大组件
Linux操作系统:作为LAMP架构的基础,提供用于支撑web站点的操作系统能够与其他三大组件提供更好的稳定性与兼容性。
Apache网站服务器:作为LAMP的前端,是一款功能强大,稳定性好的web服务器程序。
MySQL数据库服务器:作为LAMP的后端,是一款非常流行的,开源的关系型数据库系统。
PHP/Perl/Python网页编程语言:作为三种开发动态网页的程序语言,负责解析动态网页文件,并提供web应用程序的开发和运行环境。

LAMP的优势
成本低廉、可定制性强、易于开发、方便易用、安全和稳定

[[email protected] ~]# ls ##事先准备好相关软件包
httpd-2.4.25.tar.gz mcrypt-2.6.8.tar.gz php-5.5.38.tar.gz
mhash-0.9.9.9.tar.gz phpMyAdmin-4.7.2-all-languages.tar.gz
cmake-2.8.6.tar.gz libmcrypt-2.5.8.tar.gz mysql-5.6.36.tar.gz zend-loader-php5.5-linux-x86_64_update1.tar.gz

[[email protected] ~]# mount /dev/cdrom /mnt/ ##挂载centos7安装光盘
[[email protected] ~]# rm -rf /etc/yum.repos.d/*

[[email protected] ~]# vi /etc/yum.repos.d/local.repo ##配置本地yum源
[local]
name=local
baseurl=file:///mnt
enable=1
gpgcheck=0
:wq

[[email protected] ~]# yum -y install apr apr-devel cyrus-sasl-devel expat-devel libdb-devel openldap-devel apr-util-devel apr-util pcre-devel pcre

解压httpd源码包
[[email protected] ~]# tar zxf httpd-2.4.25.tar.gz -C /usr/src/
进入解压后的路径
[[email protected] ~]# cd /usr/src/httpd-2.4.25/
配置configure可执行文件
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
编译
make
编译安装
make install
查看安装路径文件,确定已安装成功
ls /usr/local/httpd/
优化执行路径
ln /usr/local/httpd/bin/* /usr/local/bin
ls -l /usr/local/bin/httpd /usr/local/bin/apachectl
查看httpd的版本信息
httpd -v
添加httpd系统服务
cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
vi /etc/init.d/httpd
chkconfig: 35 85 21 ##键入

chkconfig --add httpd

建立httpd.service配置文件
vim /lib/systemd/system/httpd.service ##建立httpd.service配置文件
[Unit]
Description=The Apache HTTP Server
After=network.target

[Service]
Type=forking
PIDFile=/usr/local/httpd/logs/httpd.pid
ExecStart=/usr/local/bin/apachectl $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s

[Install]
WantedBy=multi-user.target

设置开机启动
[[email protected] ~]# systemctl enable httpd.service ##设置开机自启
[[email protected] ~]# systemctl is-enabled httpd.service

MySQL Install Manual
一、MySQL 的编译安装
准备工作
1、查看是否已经安装过MySQL,如果安装过建议使用(-e)将其卸载。
[[email protected] ~]# rpm -q mysql-server mysql ##查看是否有安装过MySQL
[[email protected] ~]# yum -y install ncurses-devel ##安装ncurses-devel支持包
2、MySQL 5.X 版本需要cmake编译安装,所以需要安装cmake包。
[[email protected] ~]# tar zxf cmake-2.8.6.tar.gz
[[email protected] ~]# cd cmake-2.8.6/
[[email protected] cmake-2.8.6]# ./configure
[[email protected] cmake-2.8.6]# gmake && gmake install
源码编译及安装
1、创建运行用户(mysql),此用户不需要登录系统,可以不创建宿主目录。
[[email protected] cmake-2.8.6]# groupadd mysql
[[email protected] cmake-2.8.6]# useradd -M -s /sbin/nologin mysql -g mysql
2、解压下载好的源码包,解压目录/usr/src
[[email protected] ~]# tar zxf mysql-5.6.36.tar.gz -C /usr/src/
[[email protected] ~]# cd /usr/src/mysql-5.6.36/
3、配置mysql、以便支持更多功能
[[email protected] 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                   ##指定MySQL安装到那个路径下
    DSYSCONFDIR                             ##指定初始化文件目录
    DDEFAULT_CHARSET                        ##指定默认使用的字符集编码(如:utf8)
    DDEFALUT_COLLATION                      ##指定默认使用的字符集校对规则,utf8_general_ci是适用于utf-8字符集的通用规则
    DWITH_HXTRA_CHARSETS                    ##指定额外支持的其他字符集编码
4、编译安装
    [[email protected] mysql-5.6.36]# make
    [[email protected] mysql-5.6.36]# make install

安装后的其他调整
1、对数据库进行权限设置、属主:属组
[[email protected] ~]# chown -R mysql:mysql /usr/local/mysql
2、建立配置文件,因centos7默认支持mariadb数据库,所以系统默认的/etc/my.cof配置文件是MariaDB的配置文件、
而在MySQL源目录中的support-files文件夹下,提供了MySQL数据可的样本配置文件my-default.cof文件,所以
我们需要拷贝my-default.cof文件到/etc路径下,并删除my.cof

    [[email protected] mysql-5.6.36]# rm -rf /etc/my.cof
    [[email protected] mysql-5.6.36]# cp support-files/my-default.cnf /etc/my.cnf
    [[email protected] ~]# vi /etc/my.cnf                                              ##手动指定pid文件

    pid-file=/usr/local/mysql/data/mysql.pid

    :wq

3、初始化数据库,使用户mysql可以正常登陆,所以需要运行用户mysql的身份执行初始化脚本mysql_install_db,指定数据库存放路径等。
    [[email protected] mysql-5.6.36]# /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/

4、设置环境变量,为了方便在认可目录下使用mysql命令,需要在/etc/profile设置环境变量
    [[email protected] mysql-5.6.36]# echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
    [[email protected] ~]# source /etc/profile

5、添加系统服务
    [[email protected] mysql-5.6.36]# cp support-files/mysql.server /usr/local/mysql/bin/mysqld.sh
    [[email protected] mysql-5.6.36]# chmod +x /usr/local/mysql/bin/mysqld.sh
    [[email protected] ~]# vi /usr/lib/systemd/system/mysqld.service

    [Unit]
    Description=MySQL Server
    After=network.target

    [Service]
    User=mysql
    Group=mysql

    Type=forking
    PIDFile=                                                ##PID文件为空
    ExecStart=/usr/local/mysql/bin/mysqld.sh start
    ExecStop=/usr/local/mysql/bin/mysqld.sh stop

    [Install]
    WantedBy=multi-user.target

    :wq

    [[email protected] ~]# systemctl start mysqld              ##启动MySQL
    [[email protected] ~]# systemctl enable mysqld             ##设置为开机启动
    [[email protected] ~]# systemctl status mysqld             ##查看启动状态
    [[email protected] ~]# netstat -anpt | grep mysqld         ##过滤mysql端口状态

二、访问MySQL数据库
1、登陆MySQL服务器:默认用户为root 密码为空
1)无密码登陆
[[email protected] ~]# mysql -u root ##“-u”选项用于指定认证用户
2)有密码登陆
[[email protected] ~]# mysql -u root -p ##“-p”选项来进行密码校验
3)设置登录mysql的root用户密码
[[email protected] ~]# mysqladmin -u root password 123123
2、执行MySQL操作语句
mysql> STATUS; ##"STATUS;"语句可以查看当前数据库的基本状态
3、退出mysql操作环境
mysql> exit ##退出可以使用"exit"或"quit"命令退出mysql编辑器

安装PHP服务
根据实际情况可卸载PHP相关软件依赖,另外需要安装zlib-devel xz-devel libxml2-devel包
[[email protected] ~]# rpm -e php php-cli php-ldap php-common php-mysql --nodeps
错误:未安装软件包 php
错误:未安装软件包 php-cli
错误:未安装软件包 php-ldap
错误:未安装软件包 php-common
错误:未安装软件包 php-mysql
[[email protected] ~]# yum -y install zlib-devel xz-devel libxml2-devel
yum -y install libxml2-devel

    安装扩展工具;在实际应用中,一部分基于PHP开发的web应用系统会需要额外的扩展工具,如数据加密
                  工具,libmcrypt,mhash,mcrypt等(可以从站点http://sourceforge.net下载)。安
                  装PHP软件包之前应该先安装好这些工具。
    1)安装libmcrypt
    [[email protected] ~]# tar zxf libmcrypt-2.5.8.tar.gz -C /usr/src/
    [root[email protected] ~]# cd /usr/src/libmcrypt-2.5.8/
    [[email protected] libmcrypt-2.5.8]# ./configure
    [[email protected] libmcrypt-2.5.8]# make && make install
    [[email protected] libmcrypt-2.5.8]# ln -s /usr/local/lib/libmcrypt.* /usr/lib/
    2)安装mhash
    [[email protected] ~]# tar zxf mhash-0.9.9.9.tar.gz -C /usr/src/
    [[email protected] ~]# cd /usr/src/mhash-0.9.9.9/
    [[email protected] mhash-0.9.9.9]# ./configure
    [[email protected] mhash-0.9.9.9]# make && make install
    [[email protected] mhash-0.9.9.9]# ln -s /usr/local/lib/libmhash.* /usr/lib/
    3)安装mcrypt
    [[email protected] ~]# tar zxf mcrypt-2.6.8.tar.gz -C /usr/src/
    [[email protected] ~]# cd /usr/src/mcrypt-2.6.8/
    [[email protected] mcrypt-2.6.8]# ./configure
    [[email protected] mcrypt-2.6.8]# export LD_LIBRARY_PATH=/usr/local/lib                ##解决上一条./configure配置报错问题
    [[email protected] mcrypt-2.6.8]# ./configure
    [[email protected] mcrypt-2.6.8]# make && make install

编译安装PHP
    1)解包
    [[email protected] ~]# tar zxf php-5.5.38.tar.gz -C /usr/src/                          ##解压缩PHP源码包
    [[email protected] src]# cd /usr/src/php-5.5.38/
    2)配置:在定制PHP的配置选项时,最关键的就是制定httpd,mysqld的安装路径,以便添加相关支出路径,
    使LAMP各个组件协同工作。除此之外,还可以制定安装路径,启用多字节支持,加密扩展支持等。
    ./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:制定将PHP程序安装到哪个目录下(/usr/local/php5)
    --with-mcrypt:加载数据加密等扩展支持功能
    --with-apxs2:设置Apache HTTP Server提供的apxs模块支持程序的文件位置
    --with-mysql:设置MySQL数据库服务程序的安装位置
    --with-mysqli:添加mysqli扩展支持
    --with-config-file-path:设置PHP的配置文件php.ini将要存放的位置
    --enable-mdstring:启用多字节字符串功能,以便支持中文等代码
    3)编译及安装:编译过程极慢,若期间未出现错误,接下来就可以对LAMP组件进行适当的配置,并验证是否能够协同工作。
    [[email protected] php-5.5.38]# make && make install

设置LAPM组键环境
1、php.ini配置调整
1)php.ini的建立及基本设置;安装好后PHP,服务器并不会自定创建php.ini配置文件,但在源码目录下提供了两个样例
配置文件,分别对应开发环境,生产环境。
/usr/src/php-5.5.38/php.ini-development ##开发版样例环境,用于学习测试
/usr/src/php-5.5.38/php.ini-production ##生产版样例环境,用于实际运营
选择其中一个样例文件,复制到PHP配置文件目录、/usr/local/php5下,并改名为php.ini,文件中以分号开头的内容为注释信息
[[email protected] ~]# cp /usr/src/php-5.5.38/php.ini-development /usr/local/php5/php.ini
[[email protected] ~]# grep -v "^;" /usr/local/php5/php.ini |grep -v "^$"
[PHP]
engine = On
short_open_tag = Off
asp_tags = Off
......
通过修改php.ini文件中的配置内容,可以控制PHP网页的直行特性,如是否允许用户上传文件,设置上传文件的大小限制,设置
默认使用的字符集,加载额外的扩展模块等。如没有特殊要求,可以直接使用默认配置,不做任何修改。
[[email protected] ~]# vi /usr/local/php5/php.ini

    ......  //省略部分内容
    default_charset = "utf-8"                           ##设置默认字符集为utf-8
    file_uploads = On                                   ##允许通过PHP网页上传文件
    upload_max_filesize = 2M                            ##允许上传的文件大小限制
    max_file_uploads = 20                               ##每个HTTP请求最多允许上传的文件数
    post_max_size = 8M                                  ##每次通过表单POST提交的数据量限制
    short_open_tag = On                                 ##允许识别PHP短语法标记,即<?...?>
    extension=php_mysqli.dll                            ##添加mysql支持
    2)添加ZendGuardLoader优化模块
    为了进一步提高程序的执行效率,优化页面加载速度,可以为PHP添加Zend公司开发的ZendGuardLoade”优化模块。若需要加密PHP代码以限
    制未经授权的分发,还可以购买该公司的ZendGuard软件。该模块可以在zend公司官网http://www.zend.com下载。

    将下载好的ZendGuardLoade包解压缩,并将源码目录下的模块文件复制到PHP程序的模块文件夹
    [[email protected] ~]# tar zxf zend-loader-php5.5-linux-x86_64_update1.tar.gz -C /usr/src/
    [[email protected] ~]# cd /usr/src/zend-loader-php5.5-linux-x86_64/
    [[email protected] zend-loader-php5.5-linux-x86_64]# cp ZendGuardLoader.so /usr/local/php5/lib/php

    修改php.ini配置文件,添加加载及启用ZendGuardLoade.os模块的配置语句
    [[email protected] ~]# vi /usr/local/php5/php.ini
    zend_extension=/usr/local/php5/lib/php/ZendGuardLoader.so
    zend_loader.enable=1
2、httpd.conf配置调整
    要让httpd服务器支持PHP页面解析功能,需通过LoadModule配置项加载程序的模块文件,并通过AddType配置项添加对”.php",类型网页文
    件的支持,除此以外还应修改Directoryindex配置行,添加inaex.php项,以识别常见的PHP首页文件。
    [[email protected] ~]# vi /usr/local/httpd/conf/httpd.conf
    LoadModule php5_module   modules/libphp5.so                             ##1——4行配置文件默认已经存在,所以只需要添加最后一行就可以了
    <IfModule dir_module>
        DirectoryIndex index.html index.php
    </IfModule>
    AddType application/x-httpd-php .php
    上述内容中,LoadModule行在安装PHP过程中已经自定添加,其中php5_module表示为模块名称,modules/libphp5.so表示为模块文件位置
    AddType行需要手动添加、DirectoryIndex行在原有的基础上对其进行修改就可以了。

测试LAMP协同工作
1、测试PHP网页是否能正常工作
测试apache是否支持php,在/usr/local/httpd/htdocs下边创建以下文件
vim /usr/local/httpd/htdocs/index.php
<?php
phpinfo( ); ##此函数可显示PHP服务器的环境信息
?>

    然后在客户端访问,http://服务器IP地址/index.php   即可访问成功

    测试php能否成功连接mysql,切记修改mysql的密码
    vim /usr/local/httpd/htdocs/index2.php
    <?php
        $link=mysqli_connect(‘localhost‘,‘root‘,‘123123‘);                      ##连接MySQL数据库
        if($link) echo "恭喜你,数据库连接成功啦!!";                                ##连接成功时的反馈消息
        mysqli_close($link);                                                        ##关闭数据库连接
    ?>

    然后在客户端访问,http://服务器IP地址/index2.php   即可访问成功

部署phpMyAdmin系统
phpMyAdmin是一个使用PHP语言编写,用来管理MySQL数据库的Web应用系统。通过该套件提供的网页界面,
即便是对SQL语句不太熟悉的人,也能够非常容易地对MySQL数据库进行管理和维护。
phpMyAdmin的源码包可以从其官方站点http://www.phpadmin.net中下载。下面以多国语言版源码包
phpMyAdmin-4.7.2-all-languages.tar.gz为例介绍ppMyAdmin套件的部署过程。

    1.解包,并复制到网站目录
    [[email protected] ~]# tar zxf phpMyAdmin-4.7.2-all-languages.tar.gz
    [[email protected] ~]# mv phpMyAdmin-4.7.2-all-languages /usr/local/httpd/htdocs/phpMyAdmin
    2、建立配置文件config.inc.php
    [[email protected] ~]# cd /usr/local/httpd/htdocs/phpMyAdmin/
    [[email protected] phpMyAdmin]# cp config.sample.inc.php config.inc.php

    3.访问phpMyAdmin的Web管理界面然后在客户端访问,http://服务器IP地址/phpMyAdmin   即可访问成功

原文地址:http://blog.51cto.com/liuliheng/2162545

时间: 2024-10-11 01:15:04

centos7部署安装LAMP的相关文章

centos7 编译安装lamp

系统:centos7 软件版本:php-7.1.0 +mysql-boost-5.7.16 + httpd-2.4.23 一.linux 系统限制配置 1.关闭系统防火墙 systemctl stop firewalld.service 关闭防火墙 systemctl disable firewalld.service  禁用防火墙 2.关闭SElinux sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config  setenfor

centos7 yum安装LAMP

说明:我安装后的版本号分别是: apache : Apache/2.4.6 (CentOS)mysql:5.6.42php:5.6.39 一.配置网络. 我们首先需要让我们的虚拟机能够连接上外网,这样才能方便我们使用yum进行安装. 1.如果只是自己开发用的话,最简洁的配置,我们只需要配置一个IP和网关就可以了(根据自己的实际情况) vim /etc/sysconfig/network-scripts/ifcfg-ens33 DEVICE=ens33 IPADDR=192.168.1.101 G

三台主机CentOS7 编译安装lamp

作业题:三台主机编译安装http.php,二进制源码安装mariadb环境:A主机:192.166.0.161,编译安装httpdB主机:192.166.0.162,编译安装php-fpmC主机:192.166.0.163,二进制格式安装mariadb 三台主机均关闭了firewalld.selinux,软件存放目录均为/root/tools/ 一:安装http安装扩展组件 yum -y groupinstall "开发工具" "服务器平台开发" yum insta

centos7编译安装lamp实现wordpress

准备安装包,并解压 mariadb-10.3.13.tar.gz  ,php-7.3.2.tar.bz2  ,httpd-2.4.38.tar.bz2  php-7.3.2 ,  phpMyAdmin-4.8.5-all-languages.tar.gz ,  wordpress-5.0.3-zh_CN.tar.gz   apr-1.6.5.tar.bz2   apr-util-1.6.1.tar.bz2 安装前准备 yum安装编译四个包所必须的工具 "development tools&quo

解决centos7.4 安装LAMP环境后报错:1130- Host xxx is not allowed to……

配置好环境后,用navicat登录账号时报1130- Host xxx is not allowed to--或 access denied for user [email protected]--错,原因是远程登录权限需要再设置一下,流程如下: 1.登录shell工具,先登录mysql(最新的mysql分支为mariaDB)mysql -uroot -p   回车   输入密码  回车确定登录. 2.在mysql中运行命令 GRANT ALL PRIVILEGES ON *.* TO 'roo

一次在CentOS7上安装部署Zabbix3.0版本及快速进行基本配置的实例

Zabbix3.0的安装.部署.配置,必须基于LAMP环境或是是LNMP环境. 关于LAMP环境的简单快速搭建,见博客:http://afterdawn.blog.51cto.com/7503144/1923139 注意:以下步骤都是在LAMP配置之后进行的. 本文不会再对zabbix-server和zabbix-agent理论知识再进行介绍,建议看完http://afterdawn.blog.51cto.com/7503144/1922502再进行zabbix实战. Zabbix3.0对软硬件

centos7部署LAMP+xcache (php fpm模式)

centos7通过RPM包部署分离式LAMP+xcache (php-fpm) 要求: rpm包部署LAMP,并且需要将LAMP环境进行分离式的部署 (1)一个虚拟主机提供wordpress 一个虚拟主机提供phpMyadmin (2)利用xcache来加速页面速度 环境: 此处用三台主机分别分离提供不同服务: 192.168.1.104------->提供httpd服务 192.168.1.110------->提供mariadb-server服务 192.168.1.113-------&

源码安装lamp(centos7)

1.源码安装lamp(centos7)(1)源码安装apr-1.5.2和apr-util-1.5.4 cd apr-1.5.2 ./configure && make && make install cd apr-util-1.5.4 ./configure  --with-apr=/usr/local/apr/ && make && make install (2)安装openssl-devel #mod_ssl has been requ

centos7.3编译安装LAMP环境并搭建WordPress博客

centos7.3编译安装LAMP环境并搭建WordPress博客 日期:2017年8月6日 软件版本: apr-1.5.2.tar.bz2 apr-util-1.5.4.tar.bz2 httpd-2.4.27.tar.bz2 mariadb-10.2.7-linux-x86_64.tar.gz php-7.1.7.tar.bz2 wordpress-4.8-zh_CN.tar.gz xcache-3.2.0.tar.gz 1.编译安装apache2.4 yum groupinstall de