一、使用apt-get方式为Ubuntu安装PHP+MYSQL+Apache
分别执行如下命令:
(1)安装MYSQL
sudo apt-get install mysql-server
sudo apt-get install mysql-client
(2)安装Apache
sudo apt-get install apache2
(3)安装PHP
www.zhishiwu.com
sudo apt-get install php5
sudo apt-get install libapache2-mod-auth-mysql
sudo apt-get install php5-mysql
安装结束后,检测是否成功:
(1)检测Mysql是否正常
在终端中输入:mysql -uusername -ppassword (将username和password替换为你所设置的)看是否可以正常登陆
(2)检测Apache是否正常
在浏览器中打开:http://localhost/
如果出现如下信息,则表明正常。
It works!
This is the default web page for this server.
www.zhishiwu.com
The web server software is running but no content has been added, yet.
(3)检测PHP是否正常
Ubuntu下Apache的默认安装路径为/var/www/,到其目录下新建info.php文件,文件内容为:
<?php
phpinfo();
?>
然后在浏览器中打开:http://localhost/info.php 看是否正常。
注:在该目录直接新建文件是没有权限的,为其增加当前用户权限:
su root(用root用户)
chown username /var/www(将username替换为您当前用户的用户名)
exit(退出root)
如果,您的ubuntu系统root用户还不可用,那是因为ubuntu系统默认root密码为空,您可以通过如下命令设置密码:
sudo passwd -l root
二、手工编译为Ubuntu安装PHP+MYSQL+Apache
www.zhishiwu.com
1、下载软件
MySql:wget http://down1.chinaunix.net/distfiles/mysql-5.0.56.tar.gz
Apache:wget http://apache.freelamp.com/httpd/httpd-2.2.13.tar.gz
PHP:wgethttp://125.39.113.23:9203/CDE349DEF7D7A6AC19DE5771F752CA258C693F634815D4BE/cn.php.net/distributions/php-5.2.10.tar.bz2
2、安装MySql
安装步骤:
shell> groupadd mysql
www.zhishiwu.com
shell> useradd -g mysql mysql
shell> gunzip < mysql-VERSION.tar.gz | tar -xvf – 或 tar -zxvf mysql-5.0.56.tar.gz(解压mysql源码包)
shell> cd mysql-VERSION(进入mysql源码文件夹)
shell> ./configure –prefix=/usr/local/mysql
shell> make
shell> make install
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> cd /usr/local/mysql
shell> bin/mysql_install_db –user=mysql
www.zhishiwu.com
shell> chown -R root .
shell> chown -R mysql var
shell> chgrp -R mysql .
shell> bin/mysqld_safe –user=mysql &
修改mysql root 密码
$ mysqladmin -u root password newpass
添加服务项
cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
chmod 755 /etc/init.d/mysqld
chkconfig –add mysqld
www.zhishiwu.com
3、安装Apache
tar zvxf httpd-2.2.13.tar.gz
cd httpd-2.2.13
修改src/include/httpd.h 增大最大线程数
#define HARD_SERVER_LIMIT 256
改成
#define HARD_SERVER_LIMIT 2560
www.zhishiwu.com
保存退出编译apache
./configure –prefix=/usr/local/apache –enable-module=so –enable-module=rewrite –enable-shared=max –htdocsdir=/var/www &&
make
make install
#这里我们通过enable-module参数告诉设置脚本,我们需要启动so和rewrite模块,so模块是用来提DSO支持的apache核 心模块,而rewrite模块则是用意实现地址重写的模块,由于rewrite模块需要DBM支持,如果在初次安装时没有编译进apache,以后需要用 到时需要重新编译整个apache才可以实现。为此除非你可以确定以后不会用到rewrite模块,否则还是建议你在第一次编译的时候把rewrite模 块编译好。
enable-shared=max 这个参数的作用时编译apache时,把除了so以外的所有apache的标准模块都编译成DSO模块。而不是编译进apache核心内。
好了安装apache很简单的哦,启动apache看看
www.zhishiwu.com
/usr/local/apache/bin/apachectl start
然后 通过浏览器查看http://youhost/,如果正常则说明安装成功。
apache设为linux服务
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
vi /etc/init.d/httpd
在在#!/bin/sh后面加入下面两行
#chkconfig:345 85 15
#description: Start and stops the Apache HTTP Server.
然后
chmod +x /etc/rc.d/init.d/httpd
chkconfig –add httpd
www.zhishiwu.com
4、安装PHP
(1)tar zvxf php-5.2.10.tar.bz2
(2)cd php-5.2.10
(3)./configure -prefix=/usr/local/php –with-config-file-path=/usr/local/php/etc -with-mysql=/usr/local/mysql –with-mysqli=/usr/local/mysql/bin/mysql_config –with-iconv-dir=/usr/local –with-freetype-dir –with-jpeg-dir –with-png-dir –with-zlib –with-libxml-dir=/usr –enable-xml –disable-rpath –enable-discard-path –enable-safe-mode –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –with-curl –with-curlwrappers –enable-mbregex –enable-fastcgi –enable-fpm –enable-force-cgi-redirect –enable-mbstring –with-mcrypt –with-gd –enable-gd-native-ttf –with-openssl –with-mhash –enable-pcntl –enable-sockets –with-ldap –with-ldap-sasl –-with-apxs2=/usr/local/apache/bin/apxs
www.zhishiwu.com
(4)make
(5)make install
最后一步重新启动apache报如下错误:
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保护模式引起的。
解决办法:
www.zhishiwu.com
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
vi /usr/local/apache/conf/httpd.conf
查找
在此范围添加
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
然CPOPY PHP的配置文件
cp ../php-5.2.10/php.ini.dist /usr/local/php/lib/php.ini
www.zhishiwu.com
修改php.ini文件
register_globals = On
ok!重新启动一下apache服务器
/usr/local/apache/bin/apachectl restart
然后写个php测试页info.php:内容如下
<?php
phpinfo();
?>
正常的话,应该能看到php的信息了,恭喜你的Apche+Mysql+PHP安装成功。
作者 GUMINCONG