linux安装apache、mysql、php指导

文章部分内容来源于网络,根据自己的实践,按步骤整理了msyql、apache、php的整个安装过程,写于:2016-5-18 09:55:36。 QQ:75896091

1.mysql安装

采用在线下载源码并编译的方式安装,如果已有源码包就忽略下载步骤。

1.1下载安装cmake

下载地址:http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz

[root@dc01]#cd/usr/local/sourcefiles

[root@dc01]#wgethttp://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz

[root@dc01]#tar-zxvf cmake-2.8.5.tar.gz

[root@dc01]#cdcmake-2.8.5

[root@dc01]#./configure

执行./configure报错:Error when bootstrapping CMake:

Cannot find appropriate C++compiler on this system.

Please specify one using environmentvariable CXX.

See cmake_bootstrap.log for compilers attempted.

需要安装c++库

[root@dc01] #yum installgcc-c++

[root@dc01]#./configure

[root@dc01]#make&& make install

1.2 下载安装mysql

1.下载

下载地址:http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.30.tar.gz

ssh工具(我用的是xshell)连接到linux服务器,在/usr/local目录下创建一个sourcefiles。

命令:[root@dc01]# cd /usr/local

[root@dc01]#mkdir sourcefiles

下载mysql源码文件

[root@dc01]#wgethttp://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.30.tar.gz

下载成功后解压

[root@dc01]#tar-zxvf mysql-5.6.30.tar.gz

mysql5.5以后是通过cmake来编译的,1.1节点中已经安装成功则可以继续往下进行。

[root@dc01]#cdmysql-5.6.30

2.创建mysql安装目录

[root@dc01]#mkdir/usr/local/mysql       //安装mysql

[root@dc01]#mkdir/usr/local/mysql/data  //存放数据库

3.创建mysql用户和组

[root@dc01]# groupaddmysql

[root@dc01]# useradd -r-g mysql mysql

注:在以下的文字中“[root@dc01]#”简写为“#”。

4.编译

#cmake . \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_DATADIR=/usr/local/data \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DEXTRA_CHARSETS=all \

-DENABLED_LOCAL_INFILE=1

如果报错了,错误信息如下:CMake Error at cmake/readline.cmake:85 (MESSAGE):

  Curses library not found.  Please installappropriate package,

 

      removeCMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.

Call Stack (most recent callfirst):

  cmake/readline.cmake:128(FIND_CURSES)

  cmake/readline.cmake:202(MYSQL_USE_BUNDLED_EDITLINE)

  CMakeLists.txt:427(MYSQL_CHECK_EDITLINE)

 

 

-- Configuring incomplete, errorsoccurred!

那时因为缺少ncurses-devel,执行yum -y install ncurses-devel命令进行安装。

 

删除CMakeCache.txt文件

#rm -fCMakeCache.txt

重新编译:

#make clean

#rm -f CMakeCache.txt

#rm -rf /etc/my.cnf

 

#cmake . \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_DATADIR=/usr/local/data \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DEXTRA_CHARSETS=all \

-DENABLED_LOCAL_INFILE=1

 

#make && make install

这一步会很慢,喝杯绿茶慢慢等...

5.配置

#cd /usr/local

#chown -R root:mysql mysql/

#chown -R mysql:mysql mysql/data/

#cd /usr/mysql/support-files

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

6.初始化权限表

#cd /usr/local/mysql

#scripts/mysql_install_db --user=mysql

7.添加服务器启动msyql

#ln -s /usr/local/mysql/bin/mysql /usr/bin

#cd/usr/local/mysql/support-files

#cp mysql.server /etc/init.d/mysqld

#chkconfig --add mysqld

#chkconfig mysqld on

启动msyql

service mysqld restart

8.修改密码

#mysql -uroot -p

此时还不用密码就可以登录,按enter进入msyql

#use msyql;

把所有的空密码都修改了

#update user set password=password('#*(IEqqssfNffD3sdf');

到此步,mysql已经安装完成了。

 

2.apache安装

1.下载

下载apache最新文档版本,apache官网 http://httpd.apache.org/download.cgi

下载地址:http://mirrors.noc.im/apache//httpd/httpd-2.4.20.tar.gz

#cd/usr/local/sourcefiles

#wget -chttp://mirrors.noc.im/apache//httpd/httpd-2.4.20.tar.gz

下载完成后解压

#tar-zxvf httpd-2.4.20.tar.gz

#cd httpd-2.4.20

 

2.编译

#./configure --prefix=/usr/local/apache2 --enable-module=shared

要加上后面的参数,否则无法使用php,-enable-module=shared表示Apache可以动态的加载模块。

执行后出现第一个错误:

[root@dc01httpd-2.4.20]# ./configure --prefix=/usr/local/apache2 --enable-module=shared

checkingfor chosen layout... Apache

checkingfor working mkdir -p... yes

checkingfor grep that handles long lines and -e... /bin/grep

checkingfor egrep... /bin/grep -E

checkingbuild system type... x86_64-unknown-linux-gnu

checkinghost system type... x86_64-unknown-linux-gnu

checkingtarget system type... x86_64-unknown-linux-gnu

configure:

configure:Configuring Apache Portable Runtime library...

configure:

checkingfor APR... no

configure:error: APR not found.  Please read thedocumentation.

原因是没有apr和par-util。

3.下载apr和par-util

访问地址:https://apr.apache.org/

#cd /usr/loca/sourcefiles

3.1下载

#wget -c http://mirror.bit.edu.cn/apache//apr/apr-1.5.2.tar.gz

#wget -chttp://mirror.bit.edu.cn/apache//apr/apr-util-1.5.4.tar.gz

#mkdir/usr/local/apr

#mkdir/usr/local/par-util

3.2解压

#tar-zxvf apr-1.5.2.tar.gz

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

3.3编译

注意:一定要先安装apr后安装apr-util。

#cd /usr/loca/sourcefiles/apr-1.5.2

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

#make && make install

 

#cd /usr/loca/sourcefiles/apr-util-1.5.4

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

报错:checking forchosen layout... apr-util

checkingfor gcc... gcc

checkingwhether the C compiler works... yes

checkingfor C compiler default output file name... a.out

checkingfor suffix of executables...

checkingwhether we are cross compiling... no

checkingfor suffix of object files... o

checkingwhether we are using the GNU C compiler... yes

checkingwhether gcc accepts -g... yes

checkingfor gcc option to accept ISO C89... none needed

Applyingapr-util hints file rules for x86_64-unknown-linux-gnu

 

这是需要安装gcc,直接运行 yuminstall gcc,安装Gcc即可

# yuminstall gcc

安装成功后再次执行

#./configure--prefix=/usr/local/apache2 --enable-module=shared --with-apr=/usr/local/apr--with-apr-util=/usr/local/apr-util

#make

make是报错checking for pcre-config... false

 

下载编译pcre,版本是:pcre-8.38.zip。

#cd/usr/local/sourcefiles

#tar-zxvf pcre-8.38.zip

#cd pcre-8.38

#./configure

#make

#maketest   //非必须

#makeinstall

 

再次编译par-util

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

#./configure--prefix=/usr/local/apache2 --enable-module=shared --with-apr=/usr/local/apr--with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre/

#make

#makeinstall

4.再次编译apache

#./configure --prefix=/usr/local/apache2--enable-module=shared

 

5.启动apache

#cd /usr/local/apache/bin

# apachectl -k start

httpd: Could not reliably determine theserver's fully qualified domain name, using 127.0.0.1 for ServerName

解决办法非常简单:vi /usr/local/apache2/config/httpd.conf

找到#ServerName www.example.com:80   #去掉,再重启apache即可没事了。

AddTyperequires at least two arguments, a mime type followed by one or more fileextensions

6.配置

apache配置中添加php模块配置

#vi /usr/local/apache2/conf/httpd.conf

    找到:
    AddType  application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    在后面添加:
    AddType application/x-httpd-php .php(使Apcche支持PHP注意:.php5一定要有个空格
    AddType application/x-httpd-php-source.php5   (注意:.php5一定要有个空格

   找到:
    <IfModule dir_module>
    DirectoryIndex index.html
    </IfModule>
    添加:
    <IfModule dir_module>
    DirectoryIndex index.html index.php
    </IfModule>    
    找到:
    #ServerName www.example.com:80
    修改为:
    ServerName 127.0.0.1:80或者ServerName localhost:80  

  记得要去掉前面的“#”    

7.启动关闭apache

#cd/usr/local/apache2/bin

#./apachectl-k stop

#./apachectl-k start

#./apachectl-k restart

3.php安装

1.下载php

文件名称: php-5.6.21.tar.gz

下载地址:http://cn2.php.net/get/php-5.6.21.tar.gz/from/this/mirror

下载成功后文件名称是mirro

#cd/usr/local/source

#wget http://cn2.php.net/get/php-5.6.21.tar.gz/from/this/mirror

修改文件名称

#mvmirro php-5.6.21.tar.gz

#tar-zxvf php-5.6.21.tar.gz

#cd php-5.6.21

#mkdir /usr/local/php  //php要安装到这个目录

2.编译

检查安装环境生成Makefile

#./configure--prefix=/usr/local/php  --with-apxs2=/usr/local/apache/bin/apxs

注意这里有一个-with-apxs2=/usr/local/apache/bin/apxs选项,其中apxs是在安装Apache时产生的,apxs是一个为Apache HTTP服务器编译和安装扩展模块的工具,使之可以用由mod_so提供的LoadModule指令在运行时加载到Apache服务器中。我的理解是通过这个工具把PHP模块动态加载到Apache中。

出现错误:configure: error: xml2-config not found. Please check yourlibxml2 installation.安装libxml2-deve即可。

#yum install libxml2

# yum installlibxml2-devel

安装完毕后,重新运行上面的./configure命令。

##./configure--prefix=/usr/local/php  --with-apxs2=/usr/local/apache/bin/apxs

# make

#make test

#make install

3.测试php

重启apache

 

在apache的htdocs下建立一个php文件test.php,里面的内容如下:
    <?php
    phpinfo();
    ?>

#cd /usr/local/apache2/htdocs

#vitest.php
然后在浏览器里输入http://127.0.0.1/test.php

如果出现php的相关配置,成功,如果什么都没有输出,说明失败,重新以上步骤或者查找原因

如果决定在安装后改变配置选项,只需重复最后的三步configure, make, 以及 makeinstall,然后需要重新启动 Apache使新模块生效。Apache不需要重新编译。

测试结果如下图:

 

至此,apache、msyql、php都安装完毕了, 但是php程序还不能连接mysql、不能使用openssl。

4.为php添加mysql、openssl库

进入到php源码目录

#cd/usr/local/sroucefiles/php-5.6.21

4.1编译pdo

4.1.1编译安装

#cdext/pdo

#/usr/local/php/bin/phpize

#./configure--with-php-config=/usr/local/php/bin/php-config --enable-pdo=shared

#make&& make install

如果编译成功则提示:

Installingshared extensions:    /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/

Installingheader files:         /usr/local/php//include/php/

InstallingPDO headers:          /usr/local/php//include/php/ext/pdo/

说明在/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/目录下生成了pdo.so文件

4.1.2配置

在php的配置文件(php.ini)添加配置,但是通过查找没有找到php.in。

#find /-name php.ini

原因如下:

装好php后找不到php.ini, 也没有php.ini.recommended或 php.ini-dist

php默认是没有php.ini的,可以将php.ini.recommended或 php.ini-dist cp 成 php.ini 到/usr/local/php/lib/ [具体PATH要看php安装的PATH]

由于版本更新

php.ini-production对应于 php.ini-recommended

php.ini-development对应于 php.ini-dist

查找php.ini-development

#find /-name php.ini-development

查找发现在php的源码目录中存在这个文件,那么把源码目录中php.in-development拷贝到php安装目录即可。php.in-development文件位置在/usr/local/sroucefiles/php-5.6.21/php.ini-development

#cp /usr/local/sroucefiles/php-5.6.21/php.ini-development/usr/local/php/lib/php.ini

 

配置pdo

#vi/usr/local/php/lib/php.ini

添加这行数据 extension="/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo.so"

4.2编译pdo_mysql

4.2.1编译安装

#cd/usr/local/sourcefiles/php-5.6.21/ext/pdo_msyql

#/usr/local/php/bin/phpize

#./configure--with-php-config=/usr/local/php/bin/php-config --with-pdo-mysql=/usr/local/mysql

#make

#makeinstall

成功则会出现如下提示:

Installingshared extensions:    /usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/

说明的/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/目录下生成了pdo_mysql.so文件

4.2.2配置

#vi/usr/local/php/lib/php.ini

添加这行数据extension="/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/pdo_mysql.so"

4.2.3检查配置

重启apache,访问http://127.0.0.1,页面有图1.1中的内容表示已经配置成功了。


图1.1

4.3编译openssl

4.3.1编译

#cd /usr/local/sourcefiles/php-5.6.21/ext/openssl

#/usr/local/php/bin/phpize

执行后,发现错误 无法找到config.m4,config0.m4就是config.m4。直接重命名。

#mv config0.m4 config.m4

#./configure --with-openssl --with-php-config=/usr/local/php/bin/php-config

#make

#make install

安装完成后,会返回一个.so文件(openssl.so),位置在:/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/

4.3.2 配置

#vi/usr/local/php/lib/php.ini

添加这行数据extension="/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/openssl.so"

4.3.3检查配置

重启apache,访问http://127.0.0.1,页面有图1.2中的内容表示已经配置成功了。


图1.2

结束语:记录工作中的点点滴滴,形成文档,加深印象。每天让自己进步一点点!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值