最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

配置Apache2.2+PHP5+CakePHP1.2+MySQL5運行環(huán)境

 更新時間:2009年04月25日 01:54:08   作者:  
因為最近要用PHP做個小東西,新學(xué)了PHP。結(jié)果學(xué)PHP只用了2個小時,配置服務(wù)器卻用了兩天,郁悶得想罵人。為了避免以后忘掉,寫個博客留底。

1. 安裝配置Apahce

  安裝配置Apache是比較簡單的, 跟著安裝向?qū)б徊讲酵伦呔湍芨愣?。最多就是在配置端口的地方需要注意一下,如果已?jīng)安裝了其它Web服務(wù)器占用了80端口,那記得配置的時候選一個別的端口。向?qū)е型嗽O(shè)置,在Apache的conf/httpd.conf中修改下面這句就好:

Listen 127.0.0.1:80

2. 安裝配置PHP5

  PHP5也是一路安裝就完了。要讓Apache能解釋PHP頁面,繼續(xù)修改Apache的conf/httpd.conf文件。 首先,假設(shè)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設(shè)置成默認頁面,這樣在瀏覽時沒指定頁面的情況下會自動找到index.php。找到<IfModule dir_module>塊,修改里面的DirectoryIndex配置:

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

  這里要注意默認頁面的順序,按上面的配置,如果一個目錄下同時存在index.html和index.php的情況下,會優(yōu)先找到并打開index.html。

  最后還要讓Apache能找到PHP的配置。一般說法是把php.ini拷貝到Windows目錄下,但是我寧愿在Apache中配置這個位置: 

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

  好了,現(xiàn)在PHP應(yīng)該配置完了,寫個最簡單的PHP試試看——啟動或重啟Apache服務(wù)器,在Apache的htdocs目錄下去新建個phpinfo.php文件(如果修改了DocumentRoot,就根據(jù)修改后的DocumentRoot決定位置),內(nèi)容如下:

<?
phpinfo();
?>

  現(xiàn)在打開瀏覽器看看http://localhost/phpinfo.php(非默認端口記得寫端口號),看看效果。

3. 安裝配置CakePHP

  所謂安裝,其實就是解壓而已。先把CakePHP解壓到D:\cakephp,那么CakePHP解壓出來的目錄結(jié)構(gòu)大概是這個樣子:

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

  從Google上的各種資料來查看,Web應(yīng)用的大概有三種配置方式,連介紹的順序都沒變過。其中第二種,也就是不改變CakePHP的目錄結(jié)構(gòu),也有一定安全性的一種,我覺得還不錯,采用了。

  先要把CakePHP下面的app/webroot目錄設(shè)置成Apache的DocumentRoot;然后要打開rewrite模塊(去掉注釋符號);還要配置DocumentRoot目錄的AllowOverride屬性改為All。那么要修改Apache的配置文件的下面這些內(nèi)容:

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

  然后再次重啟Apache,訪問http://localhost/試試,這時候應(yīng)該能顯示CakePHP的一些信息了。

  如果配置CakePHP的時候采用的高級配置,在試運行的時候可能會遇到頁面上有如下這樣的警告:

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

  遇到這個問題我真是頭大,查了半天資料,結(jié)果在幾乎絕望的時候,不知道在哪里看到一則信息,說是要讓APP下的tmp/cache/persistent目錄有寫權(quán)限。查看了一下,原來tmp并不存在cache目錄,所以自己創(chuàng)建了cache/persistent目錄。如果在在Linux目錄下,還要給這個目錄777權(quán)限。

4. 安裝配置MySQL

  MySQL的安裝也很簡單,安裝完之后也有向?qū)渲靡恍〇|西。這些都是數(shù)據(jù)庫上的事情,根據(jù)向?qū)б徊讲讲僮骶秃谩jP(guān)鍵是要讓PHP和CakePHP能使用MySQL數(shù)據(jù)庫。

  關(guān)于PHP中的配置,直接修改php.ini,把extension=php_mysql.dll前面的注釋符號去掉,也就是

...
extension=php_mysql.dll
...

  然后把剛才寫的phpinfo.php拷貝到CakePHP的app/webroot下面來,再瀏覽一次http://localhost/phpinfo.php,看看頁面中有沒有關(guān)于MySQL的配置信息——多半沒得。因為還少做了點事情——我很郁悶,這里就耽誤了我半天時間。

  PHP5目錄下有一大堆DLL,直接把這些DLL拷貝到Apache的bin目錄下去(如果你的PHP5目錄在PATH中,也許不用這么麻煩)?,F(xiàn)在再看看,頁面上應(yīng)該有MySQL的配置信息了吧。

  CakePHP的配置在app目錄下的config/database.php中。沒發(fā)現(xiàn)這個文件么?有沒有看到一個database.php.default?把它拷貝一份更名為database.php就好。然后當然還要改點東西。

  這個配置里只有一個DATABASE_CONFIG類,它有一個$default變量,保存就是默認數(shù)據(jù)庫的配置信息。差不多配置成這個樣子:

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

  注意login、password和database三項根據(jù)實際情況來配置。配置完成后瀏覽http://localhost/,這個頁面上應(yīng)該有一句“Your database configuration file is present. ”。如果你的數(shù)據(jù)庫準備好了,會看到“Cake is able to connect to the database.”;如果沒準備好,可能會看到一些警告或者錯誤消息。

小結(jié)

  這個配置真是累死人。誰有興趣做個完整安裝包吧,根據(jù)安裝位置自動配置,多好!或者做個GUI或者Web界面的配置程序也不錯。

相關(guān)文章

最新評論

武邑县| 罗江县| 上杭县| 禄劝| 当阳市| 聂拉木县| 安仁县| 柏乡县| 延川县| 玛曲县| 汉川市| 香港| 株洲县| 勃利县| 福贡县| 思茅市| 郴州市| 苏尼特左旗| 祁阳县| 芜湖县| 隆尧县| 柏乡县| 白河县| 哈尔滨市| 安多县| 和田县| 门源| 中江县| 如皋市| 奉节县| 平度市| 乌兰察布市| 若羌县| 天镇县| 紫阳县| 清远市| 北辰区| 岑溪市| 思茅市| 和硕县| 门头沟区|