资讯专栏INFORMATION COLUMN

Centos7.2搭建Lamp

neroneroffy / 2786人阅读

摘要:进程是串行启动,只有前一个进程启动完,才会启动下一个进程。是启动脚本复杂。进程只是执行启动脚本,不管其他事情。独立虚拟主机配置编辑文件搜索通常是末尾在后面加上然后在下创建目录,配置文件丢里面

Centos7.2搭建Lamp
今天记录下搭建Lamp的过程(有错请指出,谢谢!!)

环境说明:

使用的是阿里云的ECS,系统为Centos7.2

搭建Lamp线上环境(linux + apache2 + mysql + php5.6)

安装git进行代码的拉取


Apachede 搭建 1.查看httpd包是否可用
yum list | grep httpd
2.安装httpd(apache)
yum install httpd
3.启动
说句题外话:历史上的linux普遍都使用init进程(不感兴趣可以跳过)

也就是我们常说的:

$ sudo /etc/init.d/httpd start
# 或者
$ service httpd start

据我所知道:init(初始化检查)linux第一个启动的进程,所有的进程都是他的子孙;而且他是串行工作的,所以传统的这种模式会有2个致命的缺点:

1.是启动时间长。init进程是串行启动,只有前一个进程启动完,才会启动下一个进程。

2.是启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。

所以后面出现了一种新的技术systemd来代替;好像centos7 系统就开始默认用这个了

详细以后我们再聊

语归正传

我们要做的是 下面的启动并设为开机启动即可

3.1 启动apache2
systemctl start httpd
3.2 查看apache2状态
systemctl status httpd
3.3 停止apache2
systemctl stop httpd
3.4 重启apache2
systemctl restart httpd
3.5 设为开机启动
systemctl enable httpd.service

Mysql搭建 1.安装Mysql的源(官网的)
yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
2.安装Mysql(官网的)
yum install mysql-community-server
3.启动Mysql
systemctl start mysqld
4.查看默认密码
grep "temporary password" /var/log/mysqld.log
2017-12-12T09:19:51.358192Z 1 [Note] A temporary password is generated for root@localhost: ;+2e9;VUlwi4

冒号后面的就是初始化密码

5.重置密码(不具体说明,不懂Google)

使用密码登录mysql

mysal -h localhost -u root -p
;+2e9;VUlwi4

重置密码

SET PASSWORD FOR "username"@"host" = PASSWORD("newpassword");
# 如果是当前登陆用户用
SET PASSWORD = PASSWORD("newpassword")

创建一个用户

CREATE USER "username"@"host" IDENTIFIED BY "password"

用户只读权限

GRANT SELECT ON *.* TO "pig"@"%"; 

PHP的安装
我这使用的是php5.6,不同版本的php安装也是大同小异
1.下载源码包

官网地址: http://php.net/downloads.php

选择合适的php版本进行下在:

你可以选线下在,然后ftp上传到对应的服务器;也可以在服务器上使用wget下载;

显然没必要多此一举,我选择的是后者(wget),前者适用于在官网或源网站找不到对应的源码包;

wget http://php.net/get/php-5.6.32.tar.gz/from/this/mirror
2.解压

源码包下载完成!

注意:因为我这是用wget在官网上下载;下载包明为:mirror;我先重命名为php.tar.gz;方便解压

cp mirror php.tar.gz
tar -zxvf php.tar.gz

解压完成

cd php-5.6.32
3.安装一些必要的依赖
yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel
4.安装gcc
yum install gcc
5.安装其他配件
yum -y install libxslt-devel* 
yum -y install perl* 
yum -y install httpd-devel
find / -name apxs 得到的路径是:/usr/bin/apxs
于是得到--with-apsx2的路径是/usr/bin/apxs
6.配置(php扩展安装哪些)
./configure --prefix=/usr/local/php --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath -enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip --enable-pcntl --with-curl --with-fpm-user=nginx --enable-ftp --enable-session --enable-xml --with-apxs2=/usr/bin/apxs
7.编译安装
make
make install
8.添加环境变量
vim /etc/profile

在末尾处加上:

PATH=$PATH:/usr/local/php/bin
export PATH

重新加载文件,使修改立刻生效

source /etc/profile
9.查看版本信息
php -v 

如果能看的php的版本信息 就是完成了!

10.生成必要文件
cp php.ini-production /usr/local/php/etc/php.ini
cp sapi/fpm/php-fpm /usr/local/php/etc/php-fpm
cp /usr/local/phpetc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

下面那个是 php7才有,具体作用自行google吧

cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

到此 软件已经安装完毕!


配置

下面的配置照抄就好,不在本次探讨其含义和作用

找到:

AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz

后面追加

php5.6版本

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

搜索有没有下面这一行(省略号代表的是libphp5.so模块的绝对路径)

LoadModule php5_module ...

如果没有加上(我的有)

LoadModule php5_module        /usr/lib64/httpd/modules/libphp5.so

配置默认打开页面


    DirectoryIndex index.html index.php

到此其实已经 完成了lamp的搭建了

当然我有些强迫症,我喜欢将每个虚拟主机配置文件独立成一个对应的文件,放在一个统一的文件夹里面(没有这样的需求的小伙伴,可以忽略我下面的内容。。。)


独立虚拟主机配置

编辑httpd.conf文件

vim /etc/httpd/conf/httpd.conf

搜索(通常是末尾)

IncludeOptional conf.d/*.conf

在后面加上

IncludeOptional vhost/*

然后在 /etc/httpd下创建 vhost目录,配置文件丢里面


DocumentRoot /home/www/XXX
ServerName XXX.XXX.com
  
    Options -Indexes +FollowSymLinks +ExecCGI
    AllowOverride All
    Order allow,deny
    Allow from all
    Require all granted
  

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/26210.html

相关文章

  • Centos7.2搭建Lamp

    摘要:进程是串行启动,只有前一个进程启动完,才会启动下一个进程。是启动脚本复杂。进程只是执行启动脚本,不管其他事情。独立虚拟主机配置编辑文件搜索通常是末尾在后面加上然后在下创建目录,配置文件丢里面 Centos7.2搭建Lamp 今天记录下搭建Lamp的过程(有错请指出,谢谢!!) 环境说明: 使用的是阿里云的ECS,系统为Centos7.2 搭建Lamp线上环境(linux + apac...

    forrest23 评论0 收藏0
  • centos7下的lamp开发环境搭建

    摘要:注本文开发环境搭建于在虚拟机内的。本文仅是自己配置环境的记录,也是我在的处女作,如若有错误,欢迎指出交流。已将本文配置完成的环境打包成上传到百度云,有需要可自行。输入一下内容访问查看是否显示正常。 注:本文lamp开发环境搭建于在virtualbox+vagrant+centos-7.0-x86_64.box虚拟机内的。本文仅是自己配置环境的记录,也是我在segmentfault的处女...

    Richard_Gao 评论0 收藏0

发表评论

0条评论

neroneroffy

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<