linux底下Apache+Mysql+PHP安装

1.安装mysql5.0

下载地址:http://www.filewatcher.com/m/mysql-5.0.21.tar.gz.19529703.0.0.html  
# tar zxf mysql-5.0.21.tar.gz
# cd mysql-5.0.21
#./configure --prefix=/usr/local/mysql --sysconfdir=/etc --localstatedir=/var/lib/mysql/
说明:
   #prefix=/usr/local/mysql mysql安装的目标目录
   #sysconfdir=/etc my.ini配置文件的路径
   #localstatedir=/var/lib/mysql 数据库存放的路径
# make
# make install
# groupadd mysql
# useradd mysql -g mysql
# cp support-files/my-medium.cnf /etc/my.cnf
#(这个文件夹是原来编译的目录下的)询问你是否要覆盖时,输入"y"
#/usr/local/mysql/bin/mysql_install_db --user=mysql
# cd /usr/local/mysql      然后设置权限
# chown -R root .                #设定root能访问/usr/local/mysql
# chown -R mysql /var/lib/mysql               #设定mysql用户能够访问/var/lib/mysql
# chgrp -R mysql /usr/local/mysql     #设定mysql组能访问/usr/local/mysql
# /usr/local/mysql/bin/mysqld_safe --user=mysql &             #安全启动mysql

# PATH=$PATH:/usr/local/mysql/bin        //让系统找到mysql
# export PATH
# echo"/usr/local/mysql/lib/mysql">>/etc/ld.so.conf
# ldconfig -v

 

 


二、安装apache (httpd-2.0.59.tar.gz)
# tar zxf httpd-2.0.59.tar.gz
# cd httpd-2.0.59
# ./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --enable-mods-shared=most
说明:
--enable-so选项:让Apache可以支持DSO模式,注意,这里采用的是Apache2.0的语法。如果你的Apache是1.3版本,应改为--enable-module=so。
--enable-mods-shared=most选项:告诉编译器将所有标准模块都编译为DSO模块。你要是用的是Apache1.3,改为--enable-shared=max就可以。
--enable-rewrite选项:支持地址重写功能,使用1.3版本的朋友请将它改为--enable-module=rewrite。


# make
# make install
# vi /usr/local/apache/conf/httpd.conf #启动Apache中的php选项,找到下面两行
DirectoryIndex index.php                 #修改默认启动页
DocumentRoot                                   #指定主目录(/usr/local/apache2/htdocs)
ServerName 127.0.0.1:80
# /usr/local/apache/bin/apachectl start             


三、安装php (php-5.1.6.tar.bz2)
# tar jxf php-5.1.6.tar.bz2
# cd php-5.1.6
# ./configure --with-apxs2=/usr/local/apache/bin/apxs --disable-debug --enable-safe-mode --enable-trans-sid --with-xml --with-mysql=/usr/local/mysql --enable-short-tags --with-gd --with-zlib --with-jpeg --with-png --enable-memory-limit --disable-posix --with-config-file-path=/usr/local/lib
说明:
? --with-apxs2=/usr/local/apache/bin/apxs /   这是加入apache中为DSO模块的位置
? --disable-debug / #关闭php内部调试
? --enable-safe-mode / #打开php的安全模式
? --enable-trans-sid /
? --with-xml / #支持xml
? --with-mysql / #支持mysql
? --enable-short-tags / #支持PHP的短标记
? --with-gd / #支持GD库
? --with-zlib / #支持zlib
? --with-jpeg /
? --with-png /
? --enable-memory-limit /
? --disable-posix /
? --with-config-file-path=/usr/local/lib
总之复制粘贴就可以了,-_-

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

注意:如果说mysql+apache 都是默认安装,configure配置方法

# ./configure --with-apxs2=/usr/sbin/apxs --disable-debug --enable-safe-mode --enable-trans-sid --with-xml --with-mysql=/usr/share/mysql --enable-short-tags --with-gd --with-zlib --with-jpeg --with-png --enable-memory-limit --disable-posix --with-config-file-path=/usr/local/lib

# make
# make install
# cp php.ini-dist /usr/local/lib/php.ini 复制php的配置文件
# cd /usr/local/lib/
# vi php.ini   修改配置文件
register_globals = On 一般在414行

max_execution_time = 30 ; // 改为600 (增加处理脚本的时间限制)
max_input_time = 600 ; //最大输出时间600秒
memory_limit = 8M ; //改为40M (这样才能发10M的附件)
register_global =On
post_max_size = 2M ; //php可接受的 post 方法大小 2M
file_uploads = On ; //允许上载文件
upload_max_filesize = 2M ; //最大上载文件2M
session.auto_start = 1 ; //session自动启动

如果编译PHP:make出错
configure: error: Cannot find MySQL header files under yes.
Note that the MySQL client library is not bundled anymore.
解法:   
如果不知道 header file 在哪,用 「find / -name mysql.h」命令找出其位置;   
如果是自己也有手動安裝 MySQL 套件的話,直接指定該位置。
在 ./configure 下参数指定 header file 的位置(即mysql安装目录),如下:
./configure --with-apxs2=/usr/local/Apache2/bin/apxs --with-mysql=/usr/local/mysql

这里可以修改phpMyAdmin-2.6.0这个目录的名字,这样访问比较方便

 

软件资源下载:http://www.phpfans.net/download.php

 

 

四、整合apache和php
# vi /usr/local/apache/conf/httpd.conf   修改apache的配置文件
添加:      AddType application/x-httpd-php .php
       AddType application/x-httpd-php-source .phps           //注意将这两行添加在其它AddType后面
确保文件中有下面一段,如果没有的话就添加在所有LoadModule之后
LoadModule php5_module        modules/libphp5.so
由于我装的版本较高所以是php5,如果是LoadModule php4_module        modules/libphp4.so的话也可以
# /usr/local/apache/bin/apachectl start             //如果这地方报如下错

httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied
原因:是Linux有一个SELinux保护模式引起的。
解决办法:
1关闭SELINUX的方法:
vi /etc/selinux/config 将SELINUX=enforcing 改成SELINUX=disabled 需要重启
这个方法可能会对服务器带来风险。
2不关闭SELINUX的方法:
# setenforce 0
# chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
# service httpd restart
# setenforce 1

server httpd start 报错:启动 httpd:[Wed May 07 02:17:20 2008] [warn] module php4_module is already loaded, skipping

解决办法:查看# vi /usr/local/apache/conf/httpd.conf
是否有二条相同指令LoadModule php4_module        modules/libphp4.so 删除一条,即可


五、安装phpMyAdmin   (phpMyAdmin-2.6.0.tar.gz)
# tar zxf phpMyAdmin-2.6.0.tar.gz
# mv phpMyAdmin-2.6.0 /usr/local/apache/htdocs/
# vi config.inc.php   修改这个文件
    $cfg['Servers'][$i]['host']       = 'localhost';   //改成你数据库服务器的主机名或IP地址;
   $cfg['Servers'][$i]['user']       = 'root';    // MySQL 数据库的用户名;
   $cfg['Servers'][$i]['password']    = '';       // MySQL 数据库的密码;
主要修改这几项,保存退出

注意问题:
1>. 如果 在输入http://mysql.sqeservice.com/ ,只能看到 “ 无法载入 mysql 扩展, <br/> 请检查 PHP 配置 ” 信息,这说明当前没有安装 php-mysql ( 一个用于使用 MySQL 数据库的 PHP 程序模块)。到 RedHat 网站下载 php-mysql-4.3.9-3.18.i386.rpm 安装即可。

如果能看到信息,但在下面还会有 “ 无法载入mysql 扩展,< br/ > 请检查PHP 配置 ” 信息时,请下载如下库类,(先检查本机有没安装,再下载),安装完下列类库后即不会再出现 “ 无法载入 mysql 扩展, <br/ > 请检查PHP 配置 " 。
php-mcrypt
php-mhash
libmcrypt
libmcrypt-devel
libmhash
libmhash-devel

注意: 以上依赖库请根据实际情况来安装。

我 RedHat 的库类如下:(安装顺序也如下)
php-mcrypt-4.3.9-3.18.i386.rpm
php-mhash-4.3.9-3.18.i386.rpm
libmcrypt-2.5.7-1.2.el4.rf.i386.rpm
libmcrypt-devel-2.5.7-1.2.el4.rf.i386.rpm
libmhash-0.9.1-1.2.el4.rf.i386.rpm
libmhash-devel-0.9.1-1.2.el4.rf.i386.rpm

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值