锟斤拷锟节帮拷锟斤拷锟斤拷 Unix 平台锟斤拷 Apache 2.x 锟铰帮拷装 PHP 锟斤拷说锟斤拷锟斤拷锟斤拷示锟斤拷
锟斤拷锟狡硷拷锟斤拷使锟斤拷 Apache 2 锟侥诧拷品锟斤拷使锟斤拷锟竭程伙拷 MPM锟斤拷应使锟斤拷预锟斤拷支 MPM锟斤拷Apache 2.0 锟斤拷 2.2 默锟较碉拷 MPM锟斤拷锟斤拷原锟斤拷锟� FAQ 锟叫碉拷锟斤拷锟斤拷锟侥�使锟斤拷锟竭程伙拷 MPM 锟斤拷 Apache2锟斤拷
锟狡硷拷锟侥讹拷 » Apache 锟侥碉拷锟斤拷锟剿斤拷一锟斤拷 Apache 2.x 锟斤拷锟斤拷锟斤拷锟斤拷锟皆硷拷锟斤拷细锟侥帮拷装锟斤拷锟斤拷锟斤拷
锟斤拷锟皆达拷 » Apache 锟斤拷锟斤拷站锟斤拷锟斤拷锟斤拷锟斤拷锟铰版本锟斤拷Apache锟斤拷锟斤拷锟揭革拷锟斤拷锟斤拷锟斤拷选锟斤拷锟斤拷拾姹撅拷锟� PHP 锟斤拷锟截★拷锟斤拷锟津导斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷荩锟街伙拷锟斤拷锟� Apache 2.x 锟斤拷 PHP 锟杰癸拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷息锟斤拷锟侥讹拷 » Apache 锟侥碉拷锟斤拷锟斤拷锟斤拷省锟斤拷锟斤拷锟叫的版本锟脚o拷锟皆憋拷证锟斤拷锟侥碉拷锟斤拷确锟皆★拷锟斤拷要锟斤拷锟斤拷锟侥碉拷"NN"锟芥换为锟斤拷应锟侥版本锟脚★拷
锟斤拷前 Apache 2.x 锟斤拷锟斤拷锟斤拷锟斤拷锟叫的版本 - 2.0锟斤拷2.2锟斤拷锟斤拷然选锟斤拷某锟斤拷锟芥本锟斤拷锟斤拷锟斤拷锟斤拷原锟津,碉拷锟斤拷锟斤拷锟斤拷锟斤拷钥锟斤拷堑幕锟斤拷锟斤拷锟斤拷腔锟斤拷墙锟斤拷锟绞癸拷锟斤拷锟斤拷碌锟� Apache 2.2 锟芥本锟斤拷锟斤拷然锟斤拷锟斤拷锟铰的斤拷锟斤拷同锟斤拷锟绞猴拷 Apache 2.0 锟斤拷 2.2锟斤拷
锟斤拷锟斤拷锟斤拷锟叫筹拷锟侥地凤拷锟斤拷取 Apache 源锟斤拷锟斤拷锟饺伙拷锟斤拷压锟斤拷
gzip -d httpd-2_x_NN.tar.gz tar -xf httpd-2_x_NN.tar
同锟斤拷锟斤拷锟斤拷取 PHP 源锟斤拷锟斤拷锟斤拷锟窖癸拷锟�
gunzip php-NN.tar.gz tar -xf php-NN.tar
锟斤拷锟诫并锟斤拷装 Apache锟斤拷锟斤拷慰锟� Apache 锟斤拷装锟侥碉拷锟剿斤拷锟斤拷锟� Apache 锟侥革拷锟斤拷细锟节★拷
cd httpd-2_x_NN ./configure --enable-so make make install
锟斤拷锟斤拷锟窖撅拷锟斤拷 Apache 2.x.NN 锟斤拷装锟斤拷 /usr/local/apache2锟斤拷锟斤拷锟斤拷装支锟街匡拷装锟斤拷模锟斤拷 锟酵憋拷准锟斤拷 MPM prefork锟斤拷之锟襟,匡拷锟斤拷使锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷 Apache 锟斤拷锟斤拷锟斤拷锟斤拷
/usr/local/apache2/bin/apachectl start
/usr/local/apache2/bin/apachectl stop
锟斤拷锟斤拷锟斤拷要锟斤拷锟矫诧拷锟斤拷锟斤拷 PHP锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷酶锟斤拷指锟斤拷锟斤拷牟锟斤拷锟斤拷锟斤拷远锟斤拷锟� PHP锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷些锟斤拷展锟斤拷锟杰帮拷锟斤拷支锟街等★拷锟斤拷 ./configure --help 锟斤拷锟斤拷锟斤拷锟斤拷谐锟斤拷锟角帮拷锟斤拷玫锟斤拷锟斤拷胁锟斤拷锟斤拷锟斤拷诖锟斤拷锟斤拷校锟斤拷锟斤拷锟斤拷锟揭伙拷锟斤拷锟斤拷锟� MySQL 支锟街碉拷 Apache 2 锟较斤拷锟斤拷锟斤拷锟矫的凤拷锟斤拷锟斤拷
锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷说锟斤拷锟斤拷源锟斤拷锟斤拷锟斤拷锟斤拷锟� Apache锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷踊锟斤拷锟饺菲ワ拷锟� apxs 锟斤拷路锟斤拷锟斤拷锟斤拷锟酵拷锟斤拷锟斤拷锟斤拷锟绞斤拷锟阶帮拷锟� Apache锟斤拷锟斤拷要锟斤拷应锟侥碉拷锟斤拷 apxs 锟斤拷路锟斤拷锟斤拷注锟解,锟斤拷锟斤拷些锟斤拷锟叫版本锟叫o拷锟斤拷锟杰斤拷 apxs 锟斤拷锟斤拷为 apxs2锟斤拷
cd ../php-NN ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql make make install
锟斤拷锟斤拷锟斤拷锟斤拷诎锟阶帮拷锟侥憋拷锟斤拷锟斤拷选锟筋,只锟斤拷锟截革拷锟斤拷锟斤拷锟斤拷锟斤拷 configure锟斤拷make锟斤拷锟皆硷拷 make install锟斤拷然锟斤拷锟斤拷要锟斤拷锟斤拷锟斤拷锟斤拷 Apache 使锟斤拷模锟斤拷锟斤拷效锟斤拷Apache 锟斤拷锟斤拷要锟斤拷锟铰憋拷锟诫。
锟斤拷注锟解,锟斤拷锟斤拷锟斤拷确锟斤拷锟斤拷示锟斤拷锟斤拷锟斤拷"make install"锟斤拷锟筋将锟斤拷装 PEAR锟斤拷锟斤拷锟斤拷 PHP 锟斤拷锟斤拷锟斤拷锟斤拷 phpize锟斤拷锟斤拷锟斤拷装 PHP CLI 锟饺等★拷
锟斤拷锟斤拷 php.ini
cp php.ini-development /usr/local/lib/php.ini
锟斤拷锟皆编辑 php.ini 锟斤拷锟斤拷锟斤拷 PHP 锟斤拷锟斤拷时锟斤拷选锟筋。锟斤拷锟斤拷锟揭拷汛锟斤拷募锟斤拷诺锟斤拷锟斤拷锟斤拷位锟矫o拷锟斤拷要锟节诧拷锟斤拷 5 锟斤拷锟� --with-config-file-path=/path 选锟筋。
锟斤拷锟窖★拷锟斤拷锟� php.ini-production锟斤拷锟斤拷锟斤拷锟斤拷亩锟斤拷锟斤拷械谋锟斤拷锟叫憋拷锟斤拷锟角斤拷影锟斤拷 PHP 锟斤拷执锟叫★拷
锟洁辑 httpd.conf 锟侥硷拷锟皆碉拷锟斤拷 PHP 模锟介。LoadModule 锟斤拷式锟揭边碉拷路锟斤拷锟斤拷锟斤拷指锟斤拷系统锟叫碉拷 PHP 模锟介。锟斤拷锟较碉拷 make install 锟斤拷锟斤拷锟斤拷锟斤拷丫锟斤拷锟斤拷锟斤拷锟斤拷些锟斤拷锟斤拷锟斤拷锟揭拷锟介。
LoadModule php5_module modules/libphp5.so
锟斤拷知 Apache 锟斤拷锟截讹拷锟斤拷锟斤拷展锟斤拷锟斤拷锟斤拷锟斤拷 PHP锟斤拷锟斤拷锟界,锟斤拷 Apache 锟斤拷锟斤拷展锟斤拷 .php 锟斤拷锟斤拷锟斤拷 PHP锟斤拷为锟剿憋拷锟斤拷潜锟节碉拷危锟秸o拷锟斤拷锟斤拷锟较达拷锟斤拷锟竭达拷锟斤拷锟斤拷锟斤拷 exploit.php.jpg 锟斤拷锟侥硷拷锟斤拷锟斤拷锟斤拷锟斤拷 PHP 执锟叫o拷锟斤拷锟角诧拷锟斤拷使锟斤拷 Apache 锟斤拷 AddType 指锟斤拷锟斤拷锟斤拷锟矫★拷锟轿匡拷锟斤拷锟斤拷锟斤拷锟斤拷樱锟斤拷锟斤拷锟皆简单的斤拷锟斤拷要锟斤拷锟斤拷展锟斤拷锟斤拷锟斤拷为 PHP锟斤拷锟斤拷锟斤拷锟斤拷示为锟斤拷锟斤拷.php锟斤拷
<FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch>
锟斤拷锟竭o拷锟斤拷也锟诫将 .php锟斤拷.php2锟斤拷.php3锟斤拷.php4锟斤拷.php5锟斤拷.php6锟斤拷锟皆硷拷 .phtml 锟侥硷拷锟斤拷锟斤拷锟斤拷 PHP 锟斤拷锟斤拷锟叫o拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟矫o拷锟斤拷锟借按锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷
<FilesMatch "\.ph(p[2-6]?|tml)$"> SetHandler application/x-httpd-php </FilesMatch>
然锟襟,匡拷锟皆斤拷 .phps 锟侥硷拷锟斤拷 PHP 源锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟绞癸拷锟斤拷锟斤拷锟斤拷锟绞臼憋拷锟斤拷愿锟斤拷锟皆达拷耄拷锟斤拷锟斤拷锟斤拷拢锟�
<FilesMatch "\.phps$"> SetHandler application/x-httpd-php-source </FilesMatch>
mod_rewrite 也锟斤拷锟斤拷锟节斤拷锟斤拷些锟斤拷锟斤拷要锟斤拷锟叫碉拷 .php 锟侥硷拷锟斤拷源锟斤拷锟斤拷锟斤拷锟绞撅拷锟斤拷锟斤拷锟斤拷锟斤拷锟揭拷锟斤拷锟斤拷歉锟斤拷锟轿� .phps 锟侥硷拷锟斤拷
RewriteEngine On RewriteRule (.*\.php)s$ $1 [H=application/x-httpd-php-source]
锟斤拷要锟斤拷锟斤拷式锟斤拷锟斤拷锟斤拷营锟斤拷系统锟斤拷锟斤拷锟斤拷 PHP 源锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟轿拷锟斤拷锟斤拷泄露系统锟斤拷锟杰伙拷锟斤拷嵌锟斤拷拇锟斤拷锟斤拷械锟斤拷锟斤拷锟斤拷锟较拷锟�
锟斤拷锟斤拷通锟斤拷锟侥凤拷式锟斤拷锟斤拷 Apache 锟斤拷锟斤拷
/usr/local/apache2/bin/apachectl start
锟斤拷锟斤拷
service httpd restart
锟斤拷锟斤拷锟斤拷锟斤拷牟锟斤拷锟斤拷锟斤拷锟绞� Apache 2.锟斤拷 锟斤拷 PHP 锟斤拷为 SAPI 模锟斤拷锟剿★拷锟斤拷然 Apache 锟斤拷 PHP 锟斤拷锟斤拷锟叫很讹拷锟斤拷锟斤拷选锟筋,锟斤拷锟斤拷锟斤拷锟斤拷应锟斤拷源锟斤拷锟斤拷目录锟斤拷使锟斤拷 ./configure --help 锟斤拷酶锟斤拷锟斤拷锟较拷锟�
锟斤拷锟斤拷要锟斤拷锟斤拷一锟斤拷锟斤拷锟竭程版本锟斤拷 Apache锟斤拷锟斤拷锟节憋拷锟斤拷时选锟斤拷锟斤拷 worker MPM 锟斤拷锟芥换锟斤拷准锟斤拷 prefork MPM锟斤拷只锟斤拷锟斤拷锟斤拷锟斤拷牡锟� 3 锟斤拷使锟矫o拷
锟斤拷锟斤拷锟斤拷呛锟斤拷锟饺凤拷锟斤拷锟斤拷锟斤拷暮锟斤拷锟斤拷锟揭达拷锟斤拷锟斤拷锟戒含锟斤拷幕锟斤拷锟斤拷锟矫诧拷要锟斤拷锟斤拷锟斤拷一锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷息锟斤拷慰锟� Apache 锟侥碉拷锟叫癸拷锟斤拷 » MPM-Modules 锟侥诧拷锟街★拷
Note:
Apache MultiViews 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷 PHP 锟斤拷使锟斤拷 MultiViews锟斤拷
Note:
要锟斤拷锟斤拷锟斤拷叱贪姹撅拷锟� Apache锟斤拷系统锟斤拷锟斤拷支锟街讹拷锟竭程★拷锟斤拷也锟斤拷味锟斤拷锟斤拷要锟斤拷 PHP 锟斤拷锟斤拷为锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锥蔚锟� Zend Thread Safety锟斤拷ZTS锟斤拷锟斤拷锟斤拷瞬锟斤拷锟斤拷锟斤拷锟斤拷械锟斤拷锟秸癸拷锟斤拷锟斤拷锟绞癸拷锟斤拷恕锟斤拷萍锟斤拷锟斤拷锟� Apache 使锟矫憋拷准锟斤拷 prefork MPM-Module锟斤拷