本文主要说明如何在Ubuntu下配置PHP开发环境LAMP。
Ubuntu 搭建 php 环境
所谓LAMP:Linux,Apache,Mysql,PHP
安装 Apache2:(注意可以先用:apt-cache show package
获取包的相关信息,如说明、大小、版本等 )
sudo apt-get install apache2
安装PHP模块:
sudo apt-get install php5
安装Mysql
sudo apt-get install mysql-server
其他模块安装:
sudo apt-get install libapache2-mod-php5
sudo apt-get install libapache2-mod-auth-mysql
sudo apt-get install php5-mysql
sudo apt-get install php5-gd
前两个很容易明白,要想apache能够解析PHP,就需要借助这两个模块来找到php engine。
第三个在php操作mysql数据库时用到,大多数人都有数据库编程经验,所以这就不用多解释了
第四个GD库。
apache2相关配置
安装完上述的各个模块后,实际上基本配都OK了,只是一些小的细节问题
基本上多有的配置都在/etc/apache2目录及其子目录下完成,故一定要搞清楚这个目录结构。
1.apache根目录
安装完apache2,根目录在/var/www下,可以通过http://localhost/测试一下是否好用。
当然也可以在该目录下新建一个文件test.html来试一试http://localhost/test.html。
2.PHP解析问题
安装完貌似php的解析都有点问题,浏览php网页会保存,apache没有将其解析为网页。
网上一般说的是需要在httpd.conf中添加XXXX,对其他的linux系统可能确实如此,但是Ubuntu有点特殊。
Ubuntu的apache2配置在/etc/apache2目录下。
这个目录下有个apache2.conf文件,这个文件通过包含其他配置文件涵盖了所有的apache2系统配置信息。
php解析部分在的配置在/etc/apache2/mods-available下的php5.conf和php5.load中,apache2.conf文件中并没有将这两个文件包含进来,只要包含进去就OK了。
*************************************************
在apache2.conf中找到
# Include module configuration:
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
在其后面添加
Include /etc/apache2/mods-available/php5.load
Include /etc/apache2/mods-available/php5.conf
*************************************************
另外一种方法就是将这两个文件链接到mods-enabled目录下:
sudo ln -s /etc/apache2/mods-available/php5.load
/etc/apache2/mods-enabled/php5.load
sudo ln -s /etc/apache2/mods-available/php5.conf
/etc/apache2/mods-enabled/php5.conf
这一种方式更好一点,没有破坏apache2本身的配置结构。
*************************************************
3.改变apache2的默认目录到当前的开发目录
apache2的默认目录配置在/etc/apache2/sites-enabled/00default文件中。
找到该文件中的DocumentRoot项, 将/var/www改为你的开发目录就OK了。
当然,还有一种方法就是不该边默认目录,只是在var/www下建立一个到你的目录的链接。
比如你的目录在/home/username/phptest,那么你只要
sudo ln -s /home/username/phptest /var/www/phptest
这样你就可以通过http://localhost/phptest访问你的工作目录了。
[注意]链接文件名中不能含有“.”,否则apache2会将其当作为一个文件试图解析而无法达到链接目录的效果。
个人推荐用后一种方式,这样可以多个工作目录并行开发。
配置中常用命令
重启apache
sudo /etc/init.d/apache2 restart
建立系统链接
sudo ln -s a b