因为最近要用PHP做个小东西,新学了PHP。结果学PHP只用了2个小时,配置服务器却用了两天,郁闷得想骂人。为了避免以后忘掉,写个博客留底。

1. 安装配置Apahce

  安装配置Apache是比较简单的, 跟着安装向导一步步往下走就能搞定。最多就是在配置端口的地方需要注意一下,如果已经安装了其它Web服务器占用了80端口,那记得配置的时候选一个别的端口。向导中忘了设置,在Apache的conf/httpd.conf中修改下面这句就好:

Listen 127.0.0.1:80 

2. 安装配置PHP5

  PHP5也是一路安装就完了。要让Apache能解释PHP页面,继续修改Apache的conf/httpd.conf文件。 首先,假设PHP5是安装在D:/php5目录。

  首先是要在Apache中载入PHP5的模块,加下面这句:

LoadModule php5_module d:/php5/php5apache2_2.dll

  然后是让Apache认识PHP页面的Mime,找到<IfModule mime_module>块,在这个块里加一句AddType语句:

<IfModule mime_module> 
... 
AddType application/x-httpd-php .php 
... 
</IfModule>

  最后还要把index.php设置成默认页面,这样在浏览时没指定页面的情况下会自动找到index.php。找到<IfModule dir_module>块,修改里面的DirectoryIndex配置:

<IfModule dir_module> 
DirectoryIndex index.html index.htm index.php 
</IfModule>

  这里要注意默认页面的顺序,按上面的配置,如果一个目录下同时存在index.html和index.php的情况下,会优先找到并打开index.html。

  最后还要让Apache能找到PHP的配置。一般说法是把php.ini拷贝到Windows目录下,但是我宁愿在Apache中配置这个位置:

<IfModule php5_module> 
PHPIniDir d:/php5/php.ini 
</IfModule>

  好了,现在PHP应该配置完了,写个最简单的PHP试试看——启动或重启Apache服务器,在Apache的htdocs目录下去新建个phpinfo.php文件(如果修改了DocumentRoot,就根据修改后的DocumentRoot决定位置),内容如下:

<? 
phpinfo(); 
?>

  现在打开浏览器看看http://localhost/phpinfo.php(非默认端口记得写端口号),看看效果。

3. 安装配置CakePHP

  所谓安装,其实就是解压而已。先把CakePHP解压到D:/cakephp,那么CakePHP解压出来的目录结构大概是这个样子:

D:/CakePHP 
│  .htaccess 
│  index.php 
│  README 
├──app 
│  └──webroot 
├──cake 
└──vendors

  从Google上的各种资料来查看,Web应用的大概有三种配置方式,连介绍的顺序都没变过。其中第二种,也就是不改变CakePHP的目录结构,也有一定安全性的一种,我觉得还不错,采用了。

  先要把CakePHP下面的app/webroot目录设置成Apache的DocumentRoot;然后要打开rewrite模块(去掉注释符号);还要配置DocumentRoot目录的AllowOverride属性改为All。那么要修改Apache的配置文件的下面这些内容:

... 
LoadModule rewrite_module modules/mod_rewrite.so 
... 
DocumentRoot "D:/cakephp/app/webroot" 
... 
<Directory "D:/cakephp/app/webroot"> 
AllowOverride All 
</Directory> 
...

  然后再次重启Apache,访问http://localhost/试试,这时候应该能显示CakePHP的一些信息了。

  如果配置CakePHP的时候采用的高级配置,在试运行的时候可能会遇到页面上有如下这样的警告:

Warning (512): Cache not configured properly. ... 
Warning (2): array_merge() [function.array-merge]: ... 
Warning (2): array_merge() [function.array-merge]: ...

  遇到这个问题我真是头大,查了半天资料,结果在几乎绝望的时候,不知道在哪里看到一则信息,说是要让APP下的tmp/cache/persistent目录有写权限。查看了一下,原来tmp并不存在cache目录,所以自己创建了cache/persistent目录。如果在在Linux目录下,还要给这个目录777权限。

4. 安装配置MySQL

  MySQL的安装也很简单,安装完之后也有向导配置一些东西。这些都是数据库上的事情,根据向导一步步操作就好。关键是要让PHP和CakePHP能使用MySQL数据库。

  关于PHP中的配置,直接修改php.ini,把extension=php_mysql.dll前面的注释符号去掉,也就是

... 
extension=php_mysql.dll 
...

  然后把刚才写的phpinfo.php拷贝到CakePHP的app/webroot下面来,再浏览一次http://localhost/phpinfo.php,看看页面中有没有关于MySQL的配置信息——多半没得。因为还少做了点事情——我很郁闷,这里就耽误了我半天时间。

  PHP5目录下有一大堆DLL,直接把这些DLL拷贝到Apache的bin目录下去(如果你的PHP5目录在PATH中,也许不用这么麻烦)。现在再看看,页面上应该有MySQL的配置信息了吧。

  CakePHP的配置在app目录下的config/database.php中。没发现这个文件么?有没有看到一个database.php.default?把它拷贝一份更名为database.php就好。然后当然还要改点东西。

  这个配置里只有一个DATABASE_CONFIG类,它有一个$default变量,保存就是默认数据库的配置信息。差不多配置成这个样子:

var $default = array( 
'driver' => 'mysql', 
'persistent' => false, 
'host' => 'localhost', 
'login' => 'your-username', 
'password' => 'your-password', 
'database' => 'your-database', 
'prefix' => '', 
);

  注意login、password和database三项根据实际情况来配置。配置完成后浏览http://localhost/,这个页面上应该有一句“Your database configuration file is present. ”。如果你的数据库准备好了,会看到“Cake is able to connect to the database.”;如果没准备好,可能会看到一些警告或者错误消息。

小结

  这个配置真是累死人。谁有兴趣做个完整安装包吧,根据安装位置自动配置,多好!或者做个GUI或者Web界面的配置程序也不错。

本文转自边城__ 51CTO博客,原文链接:http://blog.51cto.com/jamesfancy/843157,如需转载请自行联系原作者

配置Apache2.2+PHP5+CakePHP1.2+MySQL5相关推荐

  1. windwos cakephp mysql apache_配置Apache2.2+PHP5+CakePHP1.2+MySQL5运行环境

    1. 安装配置apahce 安装配置apache是比较简单的, 跟着安装向导一步步往下走就能搞定.最多就是在配置端口的地方需要注意一下,如果已经安装了其它web服务器占用了80端口,那记得配置的时候选 ...

  2. apache2.2 + php5.2.4 + mysql5.0.x 安装配置

    apache2.2  + php5.2.4  + mysql5.0.x 安装配置 我下载的都是安装版本,先对简单,需要修改的配置不多 发生错误后在google baidu上查找,所出现的错误都能找到, ...

  3. apache2.2+PHP5.2.3+mysql5.0+gd+zend+phpmyadmin

    apache2.2+PHP5.2.3+mysql5.0+gd+zend+phpmyadmin 以前自己编译了lamp,然后直接拷贝到/usr/local目录下,直接可以运行,可是问题出现了.论坛的验证 ...

  4. redhat php5 安装,完整的linux(RedHat)+php5.3.10+mysql5.5.19+apache2.2.22安装配置说明

    完整的linux(RedHat) +php5.3.10+mysql5.5.19+apache2.2.22安装配置说明 1.安装mysql #mysql完整配置 #groupadd mysql #use ...

  5. win2003下APACHE2.050+PHP5+MYSQL4.0.20+PHPMYADMIN2.57 的简易安装配置

    win2003下APACHE2.050+PHP5+MYSQL4.0.20+PHPMYADMIN2.57 的简易安装配置 先从各官方网站下了APACHE2.050.PHP5.MYSQL4.0.20.PH ...

  6. win2003 apache php5.4 mysql_win2003下Apache2.4+PHP5.4+mysql5.6的搭建

    1.软件的下载 <1>下载Apache 2.4.23-VC9-X86 <2>下载PHP 5.4.45-VC9-x86 <3>下载MySQL 5.6.25-x86 * ...

  7. xp php mysql_Win XP下全新安装Apache2,PHP5,MYSQL5

    看PHP,MYSQL,都出了新版本,想尝尝鲜,就试着安装了一下,然后把安装过程记了下来,希望能对学习PHP的新手有些帮助,斑竹可以考虑精一下了 WindowsXP下全新安装Apache2,PHP5,M ...

  8. CentOS7.3下配置 Apache2.4 + MySQL5.7 + PHP7.1.8

    本篇文章讲解的是在CentOS7.3下配置 Apache2.4 + MySQL5.7 + PHP7.1.8 一.Apache 1.查看httpd包是否可用 yum list | grep httpd ...

  9. win2003 apache php5.4 mysql_【php】在Windows2003下配置Apache2.4与php5.4

    直接配置php一直使用如同<[php]本地开发环境的部署与helloworld>(点击打开链接)的一键傻瓜包,被批为极度不专业,关键是这些一键傻瓜包LAMP的版本号不好控制.port什么的 ...

最新文章

  1. Spring Boot2.x-11 使用@ControllerAdvice和@ExceptionHandler实现自定义全局异常
  2. 【Java线程】线程协作
  3. MYsql数据库误删mysql下的user内容,导致哪哪都不能登录
  4. 中等职业学校计算机专业定位,中等职业学校计算机专业教学探讨
  5. 小女出世,暂停工作,全职照料大人小孩
  6. applicationcontext获取bean_如果你每次面试前都要去背一篇Spring中Bean的生命周期,请看完这篇文章...
  7. STM32F103与MCGS的通讯
  8. dsoframer java_DSOFramer的使用
  9. Win10易升-在线升级工具
  10. tempfile库:Python临时文件系统对象
  11. 查看电脑ip地址、查看手机ip地址、根据域名查看ip地址
  12. vue实战 —— 图书商城移动端项目
  13. 在我心目中的霸气海贼王——路飞 不一样的路飞
  14. java 数据库密码加密解密方法
  15. 1亿条数据批量插入 MySQL,哪种方式最快
  16. 2021129:linux篇-查看压缩包里面的内容
  17. 在服务器上离线下载并在线播放 Cloud Torrent
  18. 大华摄像头实现web端实时播放以及录像回放
  19. linux文件权限3代表啥,3,LINUX文件属性详述
  20. 【Linux】2020配置firefox +geckodriver + selenium 安装及报错解决办法:no DISPLAY environment variable specified

热门文章

  1. STM32中I2C总线上数据的读、写。
  2. 用NanoPi NEO Air连接USB摄像头
  3. Tesseract-OCR引擎 入门
  4. KindEditor富文本编辑器, 从客户端中检测到有潜在危险的 Request.Form 值
  5. RHEL/CentOS 下安装yum源地址汇集---不定期更新
  6. 压力不是来自于任务本身,而是任务在大脑中的堵塞,带来的焦虑和心理的抵触(转)...
  7. ionice使用说明与参数详析
  8. STC89C52单片机 数码管动态显示
  9. style=@android:style/buttonbar,Setting style=?android:attr/buttonBarStyle to parent layout and s...
  10. java 转换上传文档_自己编写JAVA环境下的文件上传组件 (转)