阿里云Centos7 手动配置LAMP

系统版本:阿里云 Linux CentOS7.2
Apache版本:2.4.23
MySQL版本:5.7.17
PHP版本:PHP5.6.5

安装前的准备

  • 利用root登陆CentOS 7.2

    • 如果使用Xshell来进行远程登陆的话需要输入ssh root@公网IP,然后输入密码(注意在Linux下密码都是不显示,但实际已经输入进去了)
  • 关闭CentOS 7.2的防火墙

    • 因为CentOS 7之后系统默认开启了防火墙,而开启防火墙之后外部无法访问80和21等端口,所以首先就是要先关闭防火墙
    • 进入root模式后(代码中的“#”代表为root模式,不用输入;一行中后出现的“#”表示说明)
    • 关闭防火墙:
      # systemctl stop firewalld.service
    • 关闭防火墙开机自启:
      # systemctl disable firewalld.service
    • 安装vim和unzip:
      # yum install -y vim unzip
    • 至此,准备工作完成,之后开始配置AMP。

Apache编译安装

  • 安装Apache钱需要先安装apr、apr-util与pcre和它们有关的依赖包
    # yum install -y gcc gcc-c++ autoconf libtool

  • 安装apr:Apache portable Run-time libraries,Apache可移植运行库,主要为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库

    # cd /usr/local/src/  #进入/usr/local/src/目录
    # wget http://oss.aliyuncs.com/aliyunecs/onekey/apache/apr-1.5.0.tar.gz  #下载apr
    # tar zxvf apr-1.5.0.tar.gz   #解压缩apr文件
    # cd apr-1.5.0  #进入apr文件
    # ./configure --prefix=/usr/local/apr  #配置安装路径
    # make && make install  #编译 && 安装apr
    
  • 安装apr-util:apr-util也是为上层应用提供的运行库,apr-util只是在apr的基础上提供了更多的数据结构和操作系统封装接口而已。

        # cd /usr/local/src/
        # wget http://oss.aliyuncs.com/aliyunecs/onekey/apache/apr-util-1.5.3.tar.gz
        # tar zxvf apr-util-1.5.3.tar.gz 
        # cd apr-util-1.5.3
        # ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
        # make && make install
    
  • 安装pcre:Perl兼容正则表达式,Perl Compatible Regular Expressions,一个由Philip Hazel开发的,为很多现代工具所使用的库。

    # cd /usr/local/src/
    # wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/pcre/pcre-8.38.tar.gz 
    # tar zxvf pcre-8.38.tar.gz
    # cd pcre-8.38
    # ./configure --prefix=/usr/local/pcre
    # make && make install
    
  • 编译并安装Apache

    # cd /usr/local/src/
    # wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/apache/httpd-2.4.23.tar.gz 
    # tar zxvf httpd-2.4.23.tar.gz
    # cd httpd-2.4.23
    # ./configure \
        --prefix=/usr/local/apache --sysconfdir=/etc/httpd \
        --enable-so --enable-cgi --enable-rewrite \
        --with-zlib --with-pcre=/usr/local/pcre \
        --with-apr=/usr/local/apr \
        --with-apr-util=/usr/local/apr-util \
        --enable-mods-shared=most --enable-mpms-shared=all \
        --with-mpm=event
    # make && make install
    
  • 修改httpd.conf配置参数

    # cd /etc/httpd/
    # vim httpd.conf
    
    • 翻到Directory参数,将 Require all denied修改为Require all granted;

    • 翻到ServerName,在下面加上SeverName localhost:80;

    • 之后按ESC输入:wq保存退出(多说一句,‘:wq’并回车在Linux下表示保存并退出;':w'并回车表示保存但不退出;':q!'表示不保存退出)

  • 设定PidFile路径:

    • pidfile 是用户程序正在开始运行期间,将进程ID写进pidfile文件,主要目的有三个:
      1.为其他程序或操作系统标识本程序正在运行,或至少启动成功了。
      2.如果计划要用kill命令终止进行,它允许一个可写脚本非常容易地检测程序运行状态。
      3.有pidfile后,可以用非常少的代价去获取前一个运行实例因何没有退出成功
      原文解释地址
      输入vim /etc/httpd/httpd.conf,在配置文件最后添加:PidFile "/var/run/httpd.pid",保存并退出
  • 启动Apache服务并验证
    # cd /usr/local/apache/bin/
    # ./apachectl start
    # netstat -tnlp  #用于查看命令是否开启
    
    • 在本地浏览器中输入云服务器的公网IP地址验证是否安装成功:

      • 网页显示该文字则表示Apache安装成功
  • 设置Apache开机自启动:
    • 输入# vim /etc/rc.d/rc.local,在该文件中添加/usr/local/apache/bin/apachectl start,然后:wq保存退出。
  • 设置环境变量
    • # vi /root/.bash_profile
    • PATH=$PATH:$HOME/bin修改为PATH=$PATH:$HOME/bin:/usr/local/apache/bin,并保存退出(:wq)
    • 执行# source /root/.bash_profile
  • 至此Apache的编译与安装就完成了

编译安装MySQL

  • 安装MySQL前的准备

    • 检查系统里面是否有rpm安装的MySQL或者mariadb,如果有必须先删除在进行MySQL的安装
        # rpm -qa | grep mysql     
        # rpm -qa | grep mariadb
                                   #按照搜索的到的内容,由下至上依次卸载;
        # rpm -e xxx               #一般使用此命令即可卸载成功,'xxx'表示所搜索出来的MySQL或mariadb,下同;
        # rpm -e --nodeps xxx      #卸载不成功时使用此命令强制卸载
    
    • 卸载完成后再次使用# rpm -qa | grep mysql# rpm -qa | grep mariadb 查看是否卸载干净
  • 安装MySQL

    • 输入命令安装MySQL依赖及MySQL
        # yum install -y libaio-*                         #安装依赖
        # mkdir -p /usr/local/mysql
        # cd /usr/local/src
        # wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/mysql/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz 
        # tar -xzvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
        # mv mysql-5.7.17-linux-glibc2.5-x86_64/* /usr/local/mysql/  #mv表示移动的意思,既把MySQLmysql-5.7.17-linux-glibc2.5-x86_64下的所有文件移动到/usr/local/mysql/ 下。
    
    • 建立MySQL组和用户,并将MySQL用户添加进MySQL组中

      # groupadd mysql
      # useradd -g mysql -s /sbin/nologin mysql
      
    • 初始化MySQL数据库

      • # /usr/local/mysql/bin/mysqld --initialize-insecure --datadir=/usr/local/mysql/data/ --user=mysql
  • 更改MySQL安装目录的属主属组

    # chown -R mysql:mysql /usr/local/mysql
    # chown -R mysql:mysql /usr/local/mysql/data/
    # chown -R mysql:mysql /usr/local/mysql
    
  • 设置开机自启动

        # cd /usr/local/mysql/support-files/
        # cp mysql.server  /etc/init.d/mysqld
        # chmod +x /etc/init.d/mysqld             # 添加执行权限
        # vim /etc/rc.d/rc.local    
    
    • PATH=$PATH:$HOME/bin:/usr/local/apache/bin修改为PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib,并保存退出(:wq)
  • 启动MySQL数据库

    • /etc/init.d/mysqld start
    • 看见下方显示Starting MySQL [OK]就可以了
  • 测试登陆MySQL数据库

    • mysql -uroot -p

    • 此时会显示输入密码
    • 由于我们没有设置密码,所以此处回车直接进入

    • 成功登入MySQL
  • 设置MySQL密码

    • mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('XXX'); #mysql>为进入MySQL之后显示的文字,不必输入。XXX为设置的密码
    • 然后可以打mysql>quit来退出MySQL并重新进入测试密码是否配置成功。
  • 至此MySQL编译和配置完成

PHP的编译安装

  • 依赖安装

    # yum install php-mcrypt libmcrypt libmcrypt-devel  libxml2-devel  openssl-devel  libcurl-devel libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64  libjpeg-turbo-devel   libmcrypt-devel   mysql-devel  -y
    # wget http://cn2.php.net/distributions/php-5.6.5.tar.gz 
    # tar zxvf php-5.6.5.tar.gz
    # cd php-5.6.5
    # ./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  --with-config-file-path=/etc \
    --with-config-file-scan-dir=/etc/php.d \
    --enable-maintainer-zts \
    --disable-fileinfo
    # make && make install
    
  • 配置文件复制

    # cd php-5.6.5
    # cp php.ini-production /etc/php.ini
    
  • 编译Apache配置文件httpd.conf,以支持PHP

    • # vim /etc/httpd/httpd.conf

    • 在配置文件最后添加:

      AddType application/x-httpd-php  .php 
      AddType application/x-httpd-php-source  .phps
      
    • 之后翻到DirectoryIndex index.html将其修改为DirectoryIndex index.php index.html

  • 重启Apache服务

    • /usr/local/apache/bin/apachectl restart
  • 测试PHP能否被正常解析

    #cd  /usr/local/apache/htdocs/
    # vim index.php 
    
    • 进入PHP编辑页面,然后输入<?php phpinfo(); ?>
      • 保存并退出(:wq)

    • 访问云服务器的公网IP/index.php,看看是否能够正常解析:
      • 出现该画面表示PHP配置成功
  • 修改Apache默认网页存放文件夹(如果有需要)

    • 输入# vim /etc/httpd/httpd.conf
    • 翻到DocumentRoot 这一段,然后将其后的内容修改为想要的存放文件夹
    • 我的已经修改过了
    • 保存退出(:wq)
  • 至此PHP5.6.5配置也已经完成

安装phpmyadmin

  • 创建相应目录->下载phpmyadmin->解压缩->将解压缩后的phpmyadmin移动到所创建的目录下

        # mkdir -p /usr/local/apache/htdocs/phpmyadmin  #创建phpmyadmin目录
        # cd /usr/local/src/
        # wget http://oss.aliyuncs.com/aliyunecs/onekey/phpMyAdmin-4.1.8-all-languages.zip
        # unzip phpMyAdmin-4.1.8-all-languages.zip
        # mv phpMyAdmin-4.1.8-all-languages/*  /usr/local/apache/htdocs/phpmyadmin #移动解压缩的phpmyadmin到之前所创建的phpmyadmin目录
    
  • 访问公网IP/phpmyadmin即可打开phpmyadmin登陆页面,输入mysql的用户名及密码即可登陆

    • 登录界面
    • 输入MySQL用户名和密码并登入

至此阿里云CentOS 7.2下的LAMP配置全部完成,剩下的就可以进行使用了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 195,438评论 5 461
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 82,235评论 2 373
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 142,635评论 0 323
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,439评论 1 266
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,259评论 4 357
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,248评论 1 273
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,644评论 3 384
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,308评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,603评论 1 292
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,670评论 2 312
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,429评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,291评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,678评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,962评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,241评论 1 251
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,622评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,819评论 2 335

推荐阅读更多精彩内容