Centos 7.0 部署安装LAMP环境

时间:2022-06-22 12:49:10

LAMP 简介:     

      LAMP是指(Linux+Apache+Mysql/MariaDB+Perl/PHP/Python)一组通常一起使用来运行动态网站或者服务器的*软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。 

     Apache是LAMP架构最核心的Web Server,开源、稳定、模块丰富是Apache的优势。但Apache的缺点是有些臃肿,内存和CPU开销大,性能上有损耗,不如一些轻量级的Web 服务器(例如nginx)高效,轻量级的Web服务器对于静态文件的响应能力来说远高于Apache服务器。

     Apache做为Web Server是负载PHP的最佳选择,如果流量很大的话,可以采用nginx来负载非PHP的Web请求。nginx是一个高性能的HTTP和反向代理服 务器,Nginx以它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。Nginx不支持PHP和CGI等动态语言,但支持负载均衡和容 错,可和Apache配合使用,是轻量级的HTTP服务器的首选。

   Apache提供了自己的缓存模 块,也可以使用外加的Squid模块进行缓存,这两种方式均可以有效的提高Apache的访问响应能力。Squid Cache是一个Web缓存服务器,支持高效的缓存,可以作为网页服务器的前置cache服务器缓存相关请求来提高Web服务器的速度。

    PHP的加速使用eAccelerator加速器,eAccelerator是一个*开放源码PHP加速器,优化和动 态内容缓存,提高了性能PHP脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。

    web缓存加速的解决方案有以下几种:

    1、squid + Apache + PHP + eAccelerator

   使用Apache负载PHP,使用squid进行缓存,html或图片的请求可以直接由squid返回给用户。很多大型网站都采用这种架构。

    2、nginx/Apache + PHP(fastcgi) + eAccelerator

    使用nginx或Apache负载PHP,PHP使用fastcgi方式运行,效率较高。

    3、nginx + Apache + PHP + eAccelerator

    此方案综合了nginx和Apache的优点,使用Apache负载PHP,nginx负责解析其他Web请求,使用nginx的rewrite模块,Apache端口不对外开放。

       MySQL是一个关系型数据库管理系统,关系数据库将数据保存在不同的表中,这样就增加了速度并提高了灵活性。目前MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。

       PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。。

安装环境:

     系统: centos 7.0 最小化安装

    软件:httpd-2.4.26 、mysql 、php

基本环境准备部署工作: 

 1、关闭firewall:

[root@rsyslog~]# systemctl stop firewalld.service 
[root@rsyslog~]# systemctl disable firewalld.service

 2、安装iptables防火墙

[root@rsyslog~]# yum install iptables-services [root@rsyslog~]# vi /etc/sysconfig/iptables #编辑防火墙配置文件-A INPUT -p tcp -m   state --state NEW -m tcp --dport 80 -j ACCEPT     #允许http协议80  端口通过-A INPUT -p tcp -m   state --state NEW -m tcp --dport 3306 -j ACCEPT   #允许mysql  3306端口通过:wq! #保存退出[root@rsyslog~]#  systemctl restart iptables.service #最后重启防火墙使配置生效[root@rsyslog~]#  systemctl enable iptables.service  #设置防火墙开机启动

 3、关闭selinux           

[root@rsyslog~]# vi /etc/selinux/config#SELINUX=enforcing     #注释掉#SELINUXTYPE=targeted     #注释掉SELINUX=disabled       #增加改行内容:wq!            #保存退出[root@rsyslog~]# setenforce 0  #使配置立即生效

LAMP环境部署:

   一、安装apache

   1、yum 安装依赖包gcc、gcc-c++、openssl-devel 、pcre 、pcre-devel

[root@rsyslog src]#  yum install -y gcc gcc-c++ openssl-devel pcre pcre-devel

   2、编译安装apr 

[root@rsyslog src]# tar -zxf apr-1.5.2.tar.gz [root@rsyslog src]# cd apr-1.5.2[root@rsyslog apr-1.5.2]# ./configure --prefix=/usr/local/apr  #配置安装路径[root@rsyslog apr-1.5.2]# make && make install                       #编译安装

   3、编译安装apr-util

[root@rsyslog src]# tar -zxf apr-util-1.5.4.tar.gz [root@rsyslog src]# cd apr-1.5.4[root@rsyslog apr-util-1.5.4]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr    #必须执行--with-apr 安装路径[root@rsyslog apr-util-1.5.4]# make && make install

  4、编译安装Apache

[root@rsyslog src]# tar -zxf httpd-2.4.26.tar.gz[root@rsyslog src]]# cd httpd-2.4.20[root@rsyslog httpd-2.4.20]#./configure \--prefix=/usr/local/apache \     # 指定安装目录--sysconfdir=/etc/httpd \        # 指定配置文件安装路径--enable-so \                   #允许运行时加载DSO模块--enable-ssl \                   #启动ssl加密功能--enable-cgi \                   # 启用cgi协议--enable-rewrite \               #启用URL重写功能--with-zlib \--with-pcre=/usr/ \               #指定pcre的安装路径   --with-apr=/usr/local/apr \--with-apr-util=/usr/local/apr-util \--enable-mods-shared=most \            #启用大多数共享模块--enable-mpms-shared=all \              #启用MPM所有参数--with-mpm=event                #指定使用的MPM的类型 [root@rsyslog httpd-2.4.20]# make && make install      #编译安装

 5、复制服务脚本,让其可以使用service起停

[root@rsyslog httpd-2.4.20]#  cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd  #复制启动本到启动目录下[root@rsyslog httpd-2.4.20]#  chmod 755 -R /etc/rc.d/init.d/httpd[root@rsyslog httpd-2.4.20]#   vi  /etc/httpd/httpd.conf   #编辑httpd.conf文本在该行#ServerName www.example.com:80   下添加以下内容ServerName localhost:80:wq[root@rsyslog httpd-2.4.20]# service httpd start      #启动httpd 服务

   6、把httpd 服务添加到开机服务列表

[root@rsyslog httpd-2.4.20]#  vi /etc/rc.d/init.d/httpd   #编辑httpd 文本 ,支持chkconfig 添加服务#!/bin/bash       #chkconfig:345 61 61   //添加此行,345参数表示,在哪些运行级别启动,启动序号(S61);关闭序号(K61)#description:Apache httpd   //添加此行,必写,描述服务 :wq      #保存退出[root@rsyslog httpd-2.4.20]#  chkconfig --add httpd[root@rsyslog httpd-2.4.20]#  chkconfig httpd on

   7、验证apache安装 : 

[root@rsyslog src]# curl http://localhost                       #验证安装<html><body><h1>It works!</h1></body></html>[root@rsyslog src]#  chkconfig --listhttpd               0:关    1:关    2:开    3:开    4:开    5:开    6:关

   至此 ,该Apache 服务安装完成  。

   二、安装mysql 

   1、yum 安装依赖包 cmake ncurses bison 

[root@rsyslog src]yum install -y  cmake  autocmake bison-devel ncurses-dvel ncurses bison make perl  perl-devel curl-devel

   2、添加用户、组,并建立mysql存储数据目录/data/mysql并分配权限

[root@rsyslog src]#  groupadd mysql                      #添加mysql组[root@rsyslog src]#  useradd  mysql �Cg mysql -s /bin/nologin   #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统[root@rsyslog src]#  mkdir -p /data/mysql                  #创建MySQL数据库存放目录[root@rsyslog src]#  chown -R mysql:mysql /data/mysql         #设置MySQL数据库存放目录权限[root@rsyslog src]#  chmod -R 755 /data/mysql             [root@rsyslog src]#  cd /usr/local/mysql                    #进入MySQL安装目录

   3、编译安装msyql

[root@rsyslog src]# tar -zxf mysql-5.6.19.tar.gz[root@rsyslog src]# cd mysql-5.6.19[root@rsyslog mysql-5.6.19]#  cmake \-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \-DMYSQL_DATADIR=/data/mysql \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DEXTRA_CHARSETS=all \-DENABLED_LOCAL_INFILE=1 \-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \-DSYSCONFDIR=/etc \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DENABLE_DOWNLOADS=1[root@rsyslog mysql-5.6.19]#  make && make install

   4、初始化数据库

[root@rsyslog mysql-5.6.19]#  cd /usr/local/mysql[root@rsyslog mysql]#  ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql--datadir=/data/mysql #生成mysql系统数据库 scripts/mysql_install_db 错误:提示/usr/bin/perl: 坏的解释器: 没有那个文件或目录解决:yum install -y perl-Module-Install.noarch

   5、复制启动脚本,让其可以使用service起停

[root@rsyslog mysql-5.6.19]#  cp ./support-files/mysql.server /rc.d/init.d/httpd  #复制启动本到启动目录下[root@rsyslog mysql-5.6.19]#  chmod 755 -R /etc/rc.d/init.d/mysqld[root@rsyslog mysql-5.6.19]#   vi /etc/rc.d/init.d/mysqld    #编辑启动mysqld文basedir=/usr/local/mysql #MySQL程序安装路径datadir=/data/mysql #MySQl数据库存放目录:wq! #保存退出[root@rsyslog mysql-5.6.19]#  service mysqld start #启动[root@rsyslog mysql-5.6.19]#  chkconfig mysqld on #加入开机启动列表[root@rsyslog mysql-5.6.19]#  echo 'export  PATH=$PATH:/usr/local/mysql/bin' >>/etc/profile #把mysql服务加入系统环境变量:在最后添加下面这一行export PATH=$PATH:/usr/local/mysql/bin[root@rsyslog mysql-5.6.19]#  source /etc/profile  #使配置立刻生效

   6、调整文件权限

[root@rsyslog mysql-5.6.19]#  chmod -R 755 /usr/local/mysql/[root@rsyslog mysql-5.6.19]#  chown -R mysql:mysql /usr/local/mysql/   #分配读写权限及所属组权限

   7、添加相关链接

[root@rsyslog mysql-5.6.19]#  ln -s /usr/local/mysql/my.cnf /etc/my.cnf #添加到/etc目录的软连[root@rsyslog mysql-5.6.19]#  ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock #添加软链接[root@rsyslog mysql-5.6.19]#  mysql_secure_installation #设置Mysql密码,根据提示输入2次密码

   8、验证mysql安装: 

[root@rsyslog mysql]# mysql -u root -p     #登陆确认Enter password: Welcome to the MySQL monitor.  Commands end with ; or \g.Your MySQL connection id is 14Server version: 5.6.19 Source distributionCopyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.mysql> [root@rsyslog mysql]# chkconfig --list    mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off[root@rsyslog mysql]# service mysqld status    # 服务启动状态SUCCESS! MySQL running (3583)

   至此 ,该Mysql  服务安装完成  

    三、安装PHP

   1、yum 安装依赖包

[root@rsyslog src]#  yum install -y libXpm-devel fontconfig-devel libvpx-devel  libxml2-devel  t1lib-devel bzip2-devel mysql-devel

   2、安装php

[root@rsyslog src]#  tar -zxf php-5.5.14.tar.gz     #解压文件[root@rsyslog src]# cd  cd php-5.5.14[root@rsyslog  php-5.5.14]# ./configure --prefix=/usr/local/php --with-mysql=mysqlnd--with-openssl --with-mysqli=mysqlnd --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml  --enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt=/usr/local/libmcrypt/  --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2  --enable-maintainer-zts #编译 [root@rsyslog libgd-2.1.0]#  make && make install     #安装错误1:Sorry, I cannot run apxs. Possible reasons follow:1. Perl is not installed2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs3. Apache was not built using --enable-so (the apxs usage page is displayed)解决方法 :编译vi  /usr/local/apache/bin/apxs   首行 #!/replace/with/path/to/perl/interpreter -w 修改为"#!/usr/bin/perl -w".

    3、编辑apache脚本,让其可以支持php

[root@rsyslog php-5.5.14]#  vi /etc/httpd/httpd.conf  #编辑apache 脚本<1> 定位到/AddType 添加如下二行AddType application/x-httpd-php  .phpAddType application/x-httpd-php-source  .phps<2> 定位至DirectoryIndex index.html 修改为:DirectoryIndex  index.php  index.html[root@rsyslog php-5.5.14]#  service httpd restart   #重启apache 服务

  4、验证编辑Apache的网页测试是否支持php: 

[root@rsyslog php-5.5.14]#  vi /usr/local/apache/htdocs/index.php  #编辑apache 脚本   #登陆确认 编译写入代码:<?php    phpinfo();?>

     打开浏览器进行web测试访问http://localhost 弹出phpinfo() 页面  ,证明整体环境LAMP安装完成  。





本文出自 “Wish_亮” 博客,请务必保留此出处http://itwish.blog.51cto.com/11439802/1942068