Ubuntu PHP环境搭建记录

参考:http://blog.csdn.net/hitabc141592/article/details/23556079


ubuntu的虚拟机已经装了N久,工作中也用到了一些linux命令,但还是不够熟悉。工作需要,打算研究下php,顺便深入了解下linux系统与shell命令,借此机会,先搭建个环境熟悉下先。找了几篇文章,发现不靠谱的(或者过时?)的文章还是有不少,参考上面博主的文章,加上其他一些资料,搭建成功,没遇到什么大的问题。所以,写篇博客记录下 搭建过程。
一 环境搭建过程,首先是apache2与php的安装,比较简单,两个命令即可:
1-1安装apache2:
sudo apt-get install apache2

 1-2 安装PHP模块:
 sudo apt-get install php5

1-3  安装Mysql
 sudo apt-get install mysql-server
由于之前已经安装过mysql,所以跳过了这个步骤;而且发现现在在安装php5时,会自动安装下面相关的几个模块:
 1-4 其他模块安装:
 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

二 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本身的配置结构。


 *************************************************
2中提到的问题没有遇到,再尝试运行
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
两条命令时提示php5.load已经存在;看来是新版已经解决了上面的问题。


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会将其当作为一个文件试图解析而无法达到链接目录的效果。

 个人推荐用后一种方式,这样可以多个工作目录并行开发。


步骤3还是很有必要的,在开发中也经常用到。可能需要注意的是,因为我是在命令行中新建的目录,所以一定记得分配读写权限,否则在vim编辑 文件时会无法保存(比较弱的问题),命令 chmod 777 test/phptest,查看文件夹/文件读写权限的命令: ls -l phptest

3 重启apache
  sudo /etc/init.d/apache2 restart
最后进行了一个简单的测试,在phptest目录下新建一个PHP 文件:test.php
<!DOCTYPE html>
<html>
<head>
<title>PHP Site</title>
</head>
<body>
<p>
<center>
<?php
echo "Hello,This is my first PHP webpage\n";
phpinfo();
?>
</center>
</p>
</body>
</html>


保存退出。

打开浏览器,输入:localhost/phptest/tset.php,就能看到我们PHP的运行结果了


附几个备用的命令:

1、重启apahce sudo /etc/init.d/apache2 restart 
2、重启mysql sudo /etc/init.d/mysql restart 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章