首页 > 技术文章 > 安装LAMP环境 基础配置解析php

y0620 2019-12-27 16:12 原文

. 安装LAMP,基础配置解析php

 

1.1安装mysql

1.1.1下载

#wget http://mirrors.sohu.com/mysql/MYSQL-5.6.35-linux-glibc2.5-x86_64.tar.gz

1.1.2解压

#Tar zxf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz  

1.1.3安装和配置

#[ -d /usr/local/mysql ] && mv /usr/local/mysql  /usr/local/mysql_old

#mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql   //挪动位置

#useradd -s /sbin/nologin  mysql   //建立MYSQL用户,因为启动需要该用户

#cd /usr/local/mysql

#mkdir  -p  /data/mysql   //创daradir ,数据库文件会放到这里面

# chown -R mysql:mysql /data/mysql   //更改权限,不更改后续操就会出问题

#.scripts/mysql_install_db --usr=mysql --datadir=/data/mysql

 

&& 表示当前面命令执行成功时,才会执行后面的

--usr表示定义数据库的以哪个用户身份在运行

--datadir 表示定义数据库的安装目录(建议放到大空间的分区上)

执行最后一条命令时,有个错误信息“FATAL ERROR: please install the following Perl modules before executing ./scripts/mysq. install db: Data::Dumper" ,这是因为缺少包perl-Module- Install,使用命令yum install -y perl-Module- Install安装它。

重新安装执行一次最后一条命令 并且会在/data/myssql下面生成几个文件和目录,说明执行正确:或者在执行玩最后一条命令,马上执行 echo &?

看是否为零

 

 

 

 

 

 

 

复制配置文件  

#cp support-files/my-default.cnf /etc/my.cnf

Cp :是否覆盖/etc/my.cnf ? y

 

 

修改配置文件成如下:

 

 

datadir是定义的存放数据的地方 一般情况,错误日志也会记录在这个目录下面。

port定义MYSQL服务器监听端口,如果不定义默认就是3306

Server_id 定义该MYSQL服务ID号,这个参数用在做主从配置的时候。

Socketd定义MYSQL服务监听的套接字地址

 

 

 

复制启动该脚本文件并修改其属性,

# cp support-files/mysql.server /etc/init.d/mysql

#chmod 755 /etc/init.d/mysql

修改启动脚本

#vim /etc/init.d/mysql

需要修改的地方有  datadir=/data/mysql(前面初始化数据库定义的目录)。把启动脚本加入系统服务项,设定开机启动并启动MYSQL。

# chkconfig --add mysql  //mysql服务加入到系统服务列表中

#chkconfig mysql on      //开机启动

# service mysql start   //启动mysql服务

如果启动不了 /data/mysql目录下查看错误日志,这个日志名通常是主机名.err,检查MYSQL是否启动的命令为

#ps aux |grep mysql   //结果应该大于2行

# netstat -lnp|grep 3306  //看看有没有监听3306端

 

1.1.4安装成功

 

 

 

 

1.1.5遇到的问题

 

 

 

 

解决方法:
yum install libaio* -y

1.2安装apache

#cd /usr/local/src.

#wget   http://mirrors.cnnic/apache/httpd/httpd-2.4-25.tar.gz 

//若这个地址失效寻找一个新的下载地址

# wget http: //mirrors.hust.edu,cn/apache/apr/apr-1.5.2.tar.gz

# wget http://mirrors.hust.edu.cn/apache/apr/apr-util-1.5.4.tar.gz

1.2.2 解压安装包

解压下载好的源压缩包

#tar zxvf httpd-2.4.25.tar.gz

#tar zxvf apr-1.5.2.tar.gz

#tar zxvf apr-util-1.5.4.tar.gz

1.2.3 安装源压缩包

  安装apr以及apr-util

#cd /usr/local/src/apr-1.5.2

#./configure --prefix=/usr/local/apr

#make && make install

# cd /usr/local/src/apr-util-1.5.4

#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

#make && make install

安装apr-util时出现如下的错误

 

 

 

 

 

解决方法  

Yum install -y expat-devel

安装完apr以及apr-util 继续安装httpd 配置编译参数

#cd /usr/local/src/httpd-2.4.25

#./configure \   //这里反斜杠表示是转移字符,加上可以把命令写成多行

--prefix=/usr/local/apache2.4

--with-apr=/usr/local/apr

--with-apr-util=/usr/local/apr-util

--enable-so

--enable-mods-shared=most

--prefix 指定安装目录

--enable-so 表示启用DSO  DSO意思是,把某些功能模块(一个功能模块就是一个so文件,这些文件在编译完httpd后会看到)的形式展现出来

提前安装pcre-devel

#yum install -y pcre pcre-devel

 

编译和安装

#make

#make install

查看httpd的目录结构以及modules目录下面的模块

#/usr/local/apache2.4/bin/apachectl -M

 

 

 

 

 

 

1.3安装php

首先下载PHP

#cd /usr/local/src

#wget http://cn2.php.net/distributions/php-5.6.30.tar.gz   //如果失败 r.aminglinux.com 下载最新版本

# tar zxf php-5.6.30.tar.gz

#cd php-5.6.30

#./configure

--prefix=/usr/local/php \

--with-apxs2=/usr/local/apache2.4/bin/apxs \

--with-config-file-path=/usr/local/php/etc \

--with-mysql=/usr/local/mysql \

--with-libxml-dir \

--with-gd \

--with-jpeg-dir \

--with-png-dir \

--with-freetype-dir \

--with-iconv-dir \

--with-zlib-dir \

--with-bz2 \

--with-openssl \

--with-mcrypt \

--enable-soap \

--enable-gd-native-ttf \

--enable-mbstring \

--enable-sockets \

--enable-exif

 

 

 

错误1

 

 

 

 

 

 

解决方法

#yum install -y libxml2-devel

 

 

 

 

错误2

 

 

 

 

 

解决方法

#yum install -y openssl openssl-devel

错误3

 

 

 

 

解决方法

#yum install -y bzip2 bzip2-devel

错误4

 

 

 

 

解决方法

#yum install -y libpng libpng-devel

错误5

 

 

 

 

解决方法

#yum install -y freetype freetype-devel

 

错误6

 

 

 

 

解决方法

#yum install -y epel-release

#yum install -y libmcrypt-devel

Centos 默认的yum源没有libmcrypt-devel这个包,所以只能借助epel yum扩展源

 

编译安装

#make

#make install

 

最后复制配置文件

#cp php.ini-production  /usr/local/php/etc/php.ini

 

 

 

 

1.4解析php

httpd的主配置文件为/usr/local/apache2.4/conf/httpd.conf , 编辑这个文件

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

 搜索ServerName 把ServerName www.example.com:80 前面的井号删除

找到如下内容:

 

 

 

 

 

改写如下 <Directory/>

     AllowOverride none

     Require all granted

</Directory>

修改它的目的是,允许所有请求,如果不设置改行,则我们访问时候会报403,在搜索下一行

AddType application/x-gzip .gz .tgz

在该行下面添加

AddType application/x-httpd-php .php

 

找到下面这一段

 

 

 

 

修改为

 

 

 

 

 

 

 

推荐阅读