有兩種方法檢查。第一種,當Apache建立apxs Perl程序時,因為一些原因,它沒有包含正確的編譯參數。編輯你apxs(在/usr/local/apache/bin/apxs或者 /usr/sbin/apxs)並檢查下列幾行:
my $CFG_CFLAGS_SHLIB = ' '; # substituted via Makefile.tmpl
my $CFG_LD_SHLIB = ' '; # substituted via Makefile.tmpl
my $CFG_LDFLAGS_SHLIB = ' '; # substituted via Makefile.tmpl
如果你看到上面那樣子,就是你發生錯誤的地方了,改成下面幾行的樣子:
my $CFG_CFLAGS_SHLIB = '-fpic -DSHARED_MODULE'; # substituted via Makefile.tmpl
my $CFG_LD_SHLIB = 'gcc'; # substituted via Makefile.tmpl
my $CFG_LDFLAGS_SHLIB = q(-shared);# substituted via Makefile.tmpl
第二種可能的原因只有在RedHat 6.1上發生。RedHat 上的apxs配置有問題,如下行:
my $CFG_LIBEXECDIR = 'modules'; # substituted via APACI install
如果你看到上面那行,應該改成下面這行:
my $CFG_LIBEXECDIR = '/usr/lib/apache'; # substituted via APACI install