日韩天天综合网_野战两个奶头被亲到高潮_亚洲日韩欧美精品综合_av女人天堂污污污_视频一区**字幕无弹窗_国产亚洲欧美小视频_国内性爱精品在线免费视频_国产一级电影在线播放_日韩欧美内地福利_亚洲一二三不卡片区

在Apache上以 DSO 方式安裝 PHP_Windows教程

編輯Tag賺U幣
教程Tag:暫無Tag,歡迎添加,賺取U幣!
如果以靜態(tài)方式安裝Apache ,則每次 PHP 有升級(jí)后,就必須重新安裝 Apache,所以,在實(shí)踐當(dāng)中,筆者總是建議用戶以 DSO 方式來安裝 PHP。如果需要安裝 ApacheSSL 時(shí),你就更會(huì)感覺到DSO 的方便和快捷了。

  DSO 字面的含義就是動(dòng)態(tài)共享對(duì)象,詳細(xì)的文檔可以參考 Apache 的在線手冊。在使用 DSO 之前,你必須保證自己的 Apache 能支持 DSO ,因此,在編譯PHP 時(shí),應(yīng)該使用 --with-apxs=/usr/local/apache/apxs 的參數(shù),當(dāng)然這里的 apxs 所在的路徑需要根據(jù)你自己的安裝路徑來修改。

  有可能你會(huì)遇到下面的錯(cuò)誤報(bào)告:
  configure: error: Sorry, I cannot run apxs. Either you need to install Perl or you need to pass the absolute path of apxs by using --with-apxs=/absolute/path/to/apxs

  如果碰到這樣的問題,一般是 Perl 已經(jīng)安裝并且已經(jīng)指定了 apxs 的路徑,但是Apache 不支持 mod_so。Apache 的缺省編譯是支持 mod_so 的,除非你在編譯時(shí)使用了 --disable-module=so 參數(shù)。

  最常見的問題就是在運(yùn)行了 #./configure --with-apxs=/usr/local/apache/apxs 之后看到下面的錯(cuò)誤報(bào)告:
  WARNING: Your /usr/local/apache/bin/apxs script is most likely broken.

  所以,我們有必要檢查一下 apxs 這個(gè)腳本文件。在文件中查看下面的行:
  my $CFG_CFLAGS_SHLIB = ' ';
  my $CFG_LD_SHLIB = ' ';
  my $CFG_LDFLAGS_SHLIB = ' ';

  如果以上幾行真是空的話,那么 apxs 就真的有問題了。正確的應(yīng)該是:

  my $CFG_CFLAGS_SHLIB = '-fpic -DSHARED_MODULE';
  my $CFG_LD_SHLIB = 'gcc';
  my $CFG_LDFLAGS_SHLIB = q(-shared);

  Red Hat 的6.1 和 6.2 中的 apxs 也有問題,下面的行:
  my $CFG_LIBEXECDIR = 'modules';

  應(yīng)該修改為:
  my $CFG_LIBEXECDIR = '/usr/lib/apache';

  得到正確的 apxs 后,就可以編譯 PHP 了。經(jīng)過 make 和 make install ,并且重啟Apache 后,我們又得到了一個(gè)錯(cuò)誤消息:

  API module structure `php4_module' in file /usr/local/apache/libexec/libphp4.so is garbled - perhaps this is not an Apache module DSO?

  不要擔(dān)心,我從來就沒有碰到過這樣的消息!因?yàn)槲以陂_始新的編譯之前總是使用make clean ; make distclean 來清除以前編譯后留下的"垃圾"。

  但是需要指出的是,筆者在升級(jí) PHP 4.0.4pl1 過程中,碰到的問題是在編譯完畢,并重新啟動(dòng) Apache 之后碰到 "undefined symbol:uncompressed" 的報(bào)告。經(jīng)過多次調(diào)試發(fā)現(xiàn)是采用了 --with-mysql=/usr/local/mysql 的開關(guān)所致,后來采用 MySQL 源代碼版本,重新編譯 MySQL 以后,再編譯 PHP ,就沒有這個(gè)問題了。所以,應(yīng)該是MySQL 的庫沒有進(jìn)入編譯路徑所致。

  需要注意的是,編譯Apache 的時(shí)候,不要使用 --activate-module=src/modules/php4/libphp4.a 參數(shù),因?yàn)檫@樣的話,PHP4 就是以靜態(tài)方式來安裝了。

  恭喜你,安裝成功,以后 PHP 有新的補(bǔ)丁/版本出來,就不需要重新編譯 Apache 了。

來源:網(wǎng)絡(luò)搜集//所屬分類:Windows教程/更新時(shí)間:2013-04-16
相關(guān)Windows教程