成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Unix系統(tǒng)下的Apache2.x

Unix 系統(tǒng)下的 Apache 2.x

本節(jié)包括在 Unix 平臺(tái)的 Apache 2.x 下安裝 PHP 的說(shuō)明和提示。

創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),銅仁企業(yè)網(wǎng)站建設(shè),銅仁品牌網(wǎng)站建設(shè),網(wǎng)站定制,銅仁網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,銅仁網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

Warning

不推薦在使用 Apache 2 的產(chǎn)品中使用線程化 MPM。應(yīng)使用預(yù)分支 MPM,Apache 2.0 和 2.2 默認(rèn)的 MPM。其原因見(jiàn) FAQ 中的相關(guān)條目使用線程化 MPM 的 Apache2。

推薦閱讀 » Apache 文檔,了解一下 Apache 2.x 服務(wù)器,以及詳細(xì)的安裝參數(shù)。

可以從 » Apache 下載站點(diǎn)下載最新版本的Apache,并且根據(jù)上文選擇合適版本的 PHP 下載。本向?qū)H包含最基礎(chǔ)的內(nèi)容,只能讓 Apache 2.x 和 PHP 能夠正常工作。更多信息請(qǐng)閱讀» Apache 文檔。這里省略所有的版本號(hào),以保證本文的正確性。需要將本文的“NN”替換為相應(yīng)的版本號(hào)。

當(dāng)前 Apache 2.x 有兩個(gè)流行的版本 - 2.0、2.2。雖然選擇某個(gè)版本會(huì)有種種原因,但是如果可以考慮的話,我們還是建議使用最新的 Apache 2.2 版本。當(dāng)然,以下的介紹同樣適合 Apache 2.0 和 2.2。

  1. 從上面列出的地方獲取 Apache 源碼包,然后解壓:

    gzip -d httpd-2_x_NN.tar.gz
    tar -xf httpd-2_x_NN.tar
    
  2. 同樣,獲取 PHP 源碼包并解壓:

    gunzip php-NN.tar.gz
    tar -xf php-NN.tar
    
  3. 編譯并安裝 Apache。請(qǐng)參考 Apache 安裝文檔了解編譯 Apache 的更多細(xì)節(jié)。

    cd httpd-2_x_NN
    ./configure --enable-so
    make
    make install
    
  4. 現(xiàn)在已經(jīng)將 Apache 2.x.NN 安裝在 /usr/local/apache2。本安裝支持可裝載模塊 和標(biāo)準(zhǔn)的 MPM prefork。之后,可以使用如下命令啟動(dòng) Apache 服務(wù)器:

    /usr/local/apache2/bin/apachectl start
    
    如果成功,可以停止 Apache 服務(wù)器并繼續(xù)安裝 PHP:
    /usr/local/apache2/bin/apachectl stop
    

  5. 現(xiàn)在需要配置并編譯 PHP。在這里可以用各種各樣的參數(shù)來(lái)自定義 PHP,例如啟動(dòng)哪些擴(kuò)展功能包的支持等。用 ./configure --help 命令可以列出當(dāng)前可用的所有參數(shù)。在此例中,將給出一個(gè)在有 MySQL 支持的 Apache 2 上進(jìn)行配置的范例。

    如果按照上面的說(shuō)明從源代碼編譯了 Apache,下面的例子會(huì)正確匹配 apxs 的路徑。如果通過(guò)其他方式安裝了 Apache,需要相應(yīng)的調(diào)整 apxs 的路徑。注意,在有些發(fā)行版本中,可能將 apxs 更名為 apxs2。

    cd ../php-NN
    ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql
    make
    make install
    

    如果決定在安裝后改變配置選項(xiàng),只需重復(fù)最后的三步 configure,make,以及 make install,然后需要重新啟動(dòng) Apache 使新模塊生效。Apache 不需要重新編譯。

    請(qǐng)注意,除非明確有提示,否則“make install”命令將安裝 PEAR、各種 PHP 工具諸如 phpize,并安裝 PHP CLI 等等。

  6. 配置 php.ini

    cp php.ini-development /usr/local/lib/php.ini
    

    可以編輯 php.ini 來(lái)設(shè)置 PHP 運(yùn)行時(shí)的選項(xiàng)。如果想要把此文件放到另外的位置,需要在步驟 5 添加 --with-config-file-path=/path 選項(xiàng)。

    如果選擇了 php.ini-production,請(qǐng)務(wù)必閱讀其中的變更列表,它們將影響 PHP 的執(zhí)行。

  7. 編輯 httpd.conf 文件以調(diào)用 PHP 模塊。LoadModule 達(dá)式右邊的路徑必須指向系統(tǒng)中的 PHP 模塊。以上的 make install 命令可能已經(jīng)完成了這些,但務(wù)必要檢查。

    LoadModule php5_module modules/libphp5.so
  8. 告知 Apache 將特定的擴(kuò)展名解析成 PHP,例如,讓 Apache 將擴(kuò)展名 .php 解析成 PHP。為了避免潛在的危險(xiǎn),例如上傳或者創(chuàng)建類似 exploit.php.jpg 的文件并被當(dāng)做 PHP 執(zhí)行,我們不再使用 Apache 的 AddType 指令來(lái)設(shè)置。參考下面的例子,你可以簡(jiǎn)單的將需要的擴(kuò)展名解釋為 PHP。我們演示為增加.php。

    <FilesMatch \.php$>
        SetHandler application/x-httpd-php
    </FilesMatch>

    或者,你也想將 .php,.php2,.php3,.php4,.php5,.php6,以及 .phtml 文件都當(dāng)做 PHP 來(lái)運(yùn)行,我們無(wú)需額外的設(shè)置,僅需按照下面這樣來(lái):

    <FilesMatch "\.ph(p[2-6]?|tml)$">
        SetHandler application/x-httpd-php
    </FilesMatch>

    然后,可以將 .phps 文件由 PHP 源碼過(guò)濾器處理,使得其在顯示時(shí)可以高亮源碼,設(shè)置如下:

    <FilesMatch "\.phps$">
        SetHandler application/x-httpd-php-source
    </FilesMatch>

    mod_rewrite 也有助于將那些不需要運(yùn)行的 .php 文件的源碼高亮顯示,而并不需要將他們更名為 .phps 文件:

    RewriteEngine On
    RewriteRule (.*\.php)s$ $1 [H=application/x-httpd-php-source]

    不要在正式生產(chǎn)運(yùn)營(yíng)的系統(tǒng)上啟動(dòng) PHP 源碼過(guò)濾器,因?yàn)檫@可能泄露系統(tǒng)機(jī)密或者嵌入的代碼中的敏感信息。

  9. 按照通常的方式啟動(dòng) Apache 服務(wù):

    /usr/local/apache2/bin/apachectl start
    

    或者

    service httpd restart
    

按照上面的步驟便可以使 Apache 2.x 將 PHP 作為 SAPI 模塊了。當(dāng)然 Apache 和 PHP 都還有很多配置選項(xiàng),可以在相應(yīng)的源代碼目錄中使用 ./configure --help獲得更多信息。

假如要編譯一個(gè)多線程版本的 Apache,可在編譯時(shí)選擇用 worker MPM 來(lái)替換標(biāo)準(zhǔn)的 prefork MPM。只需在上面的第 3 步使用:


--with-mpm=worker

如果不是很明確這樣做的后果并且大概理解其含義的話,最好不要進(jìn)行這一步。更多信息請(qǐng)參考 Apache 文檔中關(guān)于 » MPM-Modules 的部分。

Note:

Apache MultiViews 常見(jiàn)問(wèn)題中討論了在 PHP 中使用 MultiViews。

Note:

要編譯多線程版本的 Apache,系統(tǒng)必須支持多線程。這也意味著需要將 PHP 編譯為正處在試驗(yàn)階段的 Zend Thread Safety(ZTS),因此并不是所有的擴(kuò)展都可以使用了。推薦編譯 Apache 使用標(biāo)準(zhǔn)的 prefork MPM-Module。



Unix 平臺(tái)的 Lighttpd 1.4Unix 系統(tǒng)下的 Apache 2.xUnix 系統(tǒng)下的 Apache 2.xUnix 系統(tǒng)下的 Apache 1.3.x
[edit] Last updated: Fri, 23 Aug 2013
Unix 系統(tǒng)下的 Apache 2.xUnix 系統(tǒng)下的 Apache 2.xadd a noteUser Contributed NotesUnix 系統(tǒng)下的 Apache 2.x- [16 notes]
up
down
1
nmmm at nmmm dot nu
4 years ago
When I upgrade to apache 2.2, this:

AddType application/x-httpd-php .php5
AddType application/x-httpd-php .php42
AddType application/x-httpd-php .php4
AddType application/x-httpd-php .php3
AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtm
AddType application/x-httpd-php .phtml
AddType application/x-httpd-php .asp

...does not worked for me, so I did this:

<FilesMatch "\.(php*|phtm|phtml|asp|aspx)$">
SetHandler application/x-httpd-php
</FilesMatch>

Another interesting point with Apache 2.2 is following.
Let suppose we installed PHP as module. But for some directory, we need to use PHP as CGI (probably because of custom configuration). This can be done using:

<FilesMatch "\.(php*|phtm|phtml|asp|aspx)$">
SetHandler none
</FilesMatch>

AddType application/x-httpd-php-custom .php
Action  application/x-httpd-php-custom  /cgi-bin/php-huge

Note type must be different than "application/x-httpd-php" and also you need to deactivate the handler on sertain extention. You can do mixed configuration:

<FilesMatch "\.(php)$">
SetHandler none
</FilesMatch>

AddType application/x-httpd-php-custom .php
Action  application/x-httpd-php-custom  /cgi-bin/php-huge

in such case files like *.php5 and so on will be parsed via module, but *.php will go to php-huge executable.
up
down
1
chris@gerlt -dot- net
6 years ago
Install issues on Redhat, specifically RHEL4 with php4 already installed:  

I discovered that there was an issue caused by redhat loading php4 in another file seperate from the httpd.conf file!  This took me hours to discover.  Make sure you know if the apache config file (httpd.conf) is loading configurations from a directory (or another file(s)) as well.  If so, look in there for any php module loading which could conflict with the new module you are compiling/installing.
up
down
1
praveen dot k at masconit dot com
8 years ago
Hi too had same problem with multiview like when i execute http://huey/admin/test.php it used to compile but when i use http://huey/admin/test it wouldnt recognise it as php file... i worked it out with the addhandler method and AddType in different line and setting multiview for directive

"multiviews Options Indexes FollowSymLinks MultiViews"

the directives u can set it to root directory so now when u type pn test it will search in precendence for test.php, test.html if any .....

its working for me with apache2.0.47 and php 4.3.9 on solaris

praveen
up
down
-1
Anonymous
4 years ago
Solution for fedora is yum install mysql-devel. Then set --with-mysql=/usr/include/mysql/
monguesto
up
down
-1
Tom420.Duhamel
4 years ago
I have successfully installed Apache 2.2.11 and PHP 5.2.8 under Red Hat 9.0 on a Pentium 166 with 32 MB of RAM.

While I used RH9, the worst possible case, these notes are probably good for RH-based distributions too (Red Hat Enterprise, Fedora, CentOS...)

If you want to install MySQL, it needs to be installed before PHP because PHP requires some libraries be available.

One think important when picking up a binary distribution of MySQL is to download all four packages: MySQL-server, MySQL-devel, MySQL-client and MySQL-shared. Note: The MySQL was bundled with PHP 4 but is not anymore in PHP 5.

Then you need to install Apache before PHP, because again PHP needs some libraries be available. I installed Apache 2 from source, using the very last version available, which is 2.2.11.

I installed PHP 5.2.8 from source. Here, I had a number of problems, but none which I could not resolve easily, some of them with a little help from different forums I found through Google.

Rembember: When it says you need a package named xyz and you notice there is also one named xyz-devel, grab it.

Most of the packages I got from:
http://legacy.redhat.com/pub/redhat/linux/9/en/os/i386/RedHat/RPMS/
A similar page exists for other versions of Red Hat
and:
http://rpmfind.net/
This site has an updated version of some of the packages. Make sure to use only the one labeled for you version (in my case, Red Hat 9.0) or it will not likely work.

You already have glibc and glibc-common installed, but you need to get glibc-devel and glibc-kernheaders. Make sure to match glibc's version (rpm -q glibc). Note: When it says kernel-header is a required dependency, that's glibc-kernheader (not kernel-source). You will also need binutils (no need to match the version), and gcc and cpp (version must match).

You need zlib-devel (zlib is probably already installed, match the version you have).

If you install the GD extension, the actual library is already bundled with PHP 5 (use that one, they have done some changes in there, so don't upgrade), but you will need to install libpng and libpng-devel (match version, or disable in configure if you don't want) and libjpeg (no -devel with that one).

You will also need libxml2. Now there were a problem, because PHP requires libxml2 be 2.6 or greater, but Red Hat only supplied 2.5.4-1 for RH9 (if you have a more recent distro, you might be more lucky). After looking for a while, I decided to grab the source code for the most recent distribution at the official website (http://xmlsoft.org/) and compiled.

Hope my post is useful to someone. Please, share your experience when compiling/installing for your particular platform and setup. Remember how hard it's been for you the very first time. I confess, my very first server installation took me nearly a week and I was glad others helped me.
up
down
0
svepa at milestone42 dot com
1 year ago
On 64-bit Fedora systems (I'm using Fedora 14), configuring PHP to use the MySQL libraries installed as part of the distribution gives the following error if you follow the default instructions in this manual.

Cannot find libmysqlclient under /usr

Modifying he following invocation of configure as follows:

./configure --with-apxs2=/path/to/apxs --with-libdir=lib64 --with-mysql

should work.

Note the addition of --with-libdir=lib64
This points the configure script to look for 64-bit mysqlclient libraries.
up
down
0
susie91
6 years ago
for slackware 10.2 users with apache2, mysql5, and trying to install php5:

when following the directions above, after this step:

./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql

i kept getting this error:
"Unable to find MySql header files...."

the only way i could get php5 with mysql support was to compile MySql5 from source, and not use the binary as the mysql site recommends.

then i was able to ./configure successfully, but for some reason php was configured to compile the CGI version.

so, had to use this ./configure line:

./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql  --disable-cgi

alternatively, you could install php4 which does bundle the MySql client files.
up
down
0
jaya
7 years ago
PHP 5.1.4 INSTALLATION on Solaris 9 (Sparc)

Solaris9 Packages Installed:

Verify required package installation:
root# pkginfo SUNWbtool SUNWsprot SUNWtoo SUNWhea SUNWarc \
SUNWlibm SUNWlibms SUNWdfbh SUNWxglh SUNWcg6h

Uninstall Default Apache Packages:
root# /etc/init.d/apache stop
root# pkginfo |grep Apache
root# pkgrm SUNWaclg SUNWapchd SUNWapchr SUNWapchu

Create installation Directory:
root# mkdir /phpdata/

Download Required Packages from Sunfreeware:

Install libiconv-1.8 and gcc3.3.2 packages
root# pkgadd -d ./libiconv-1.8-sol9-sparc-local
root# pkgadd -d ./gcc-3.3.2-sol9-sparc-local

set LD_LIBRARY_PATH, CC and PATH variables
root# LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib/sparcv9/:\
/usr/lib:/usr/openwin/lib:/opt/local/lib:/usr/local/ssl/lib:\
/usr/local/apr/lib:/opt/mysql/mysql/lib
root# CC=gcc
root# PATH=$PATH:/usr/ucb:/usr/local/bin/
root# export LD_LIBRARY_PATH CC PATH

Install apr-1.2.2 and aprutil-1.2.2 packages

root# gzcat apr-1.2.2.tar.gz |tar xvf -
root# cd apr-1.2.2
root# ./configure
root# make
root# make install
root# cd ..

root# gzcat aprutil-1.2.2.tar.gz |tar xvf -
root# cd apr-util-1.2.2/
root# ./configure --with-apr=/usr/local/apr/
root# make
root# make install

Install gawk-3.1.4, expat-1.95.5, db-4.2.52.NC,
gdbm-1.8.3, libgcc-3.3 and libxml2-2.6.16 packages
root# cd ..
root# pkgadd -d ./gawk-3.1.4-sol9-sparc-local
root# pkgadd -d ./expat-1.95.5-sol9-sparc-local
root# pkgadd -d ./db-4.2.52.NC-sol9-sparc-local
root# pkgadd -d ./gdbm-1.8.3-sol9-sparc-local
root# pkgadd -d ./libgcc-3.3-sol9-sparc-local
root# pkgadd -d ./libxml2-2.6.16-sol9-sparc-local

Install GNU make package
root# gzcat make-3.81.tar.gz |tar xvf -
root# cd make-3.81
root# ./configure
root# make
root# make install
root# cd ..

Install mysql-standard-5.0.22 package
Search for user mysql
root# grep mysql /etc/passwd
root# grep mysql /etc/group

If not found create user and group mysql
root# groupadd mysql
root# useradd -G mysql mysql
root# pkgadd -d ./mysql-standard-5.0.22-solaris9-sparc.pkg.gz

Install openssl-0.9.7g package
root# gzcat openssl-0.9.7g.tar.gz |tar xvf -
root# cd openssl-0.9.7g
root# ./config shared
root# make
root# make install
root# cd ..

Install Apache2 package
root# gzcat httpd-2.2.0.tar.gz |tar xvf -
root# cd httpd-2.2.0
root# ./configure --enable-so
root# /usr/local/bin/make
root# /usr/local/bin/make install
root# cd ..

Install php-5.1.4 package
root# gzcat php-5.1.4.tar.gz |tar xvf -
root# cd php-5.1.4
root# ./configure --with-apxs2=/usr/local/apache2/bin/apxs\
--with-ldap --with-mysql=/opt/mysql/mysql/
root# /usr/local/bin/make
root# /usr/local/bin/make install
root# cp php.ini-dist /usr/local/lib/php.ini

Edit httpd.conf to load the PHP module
and to parse certain extensions as PHP
root# vi /usr/local/apache2/conf/httpd.conf
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php .phtml

Start Apache
root# /usr/local/apache2/bin/apachectl start

Add environmental variables below HTTPD
root# vi /usr/local/apache2/bin/apachectl
LD_LIBRARY_PATH=/usr/local/lib:/usr/local/lib/sparcv9/:
/usr/lib:/usr/openwin/lib:/opt/local/lib:/usr/local/ssl/lib:
/usr/local/apr/lib:/opt/mysql/mysql/lib
PATH=/bin:/sbin:/usr/ccs/bin:/usr/sbin:/usr/openwin/bin:\
/usr/ucb:/usr/local/bin/
export LD_LIBRARY_PATH PATH

Create Apache Startup Script
up
down
0
felixcca at yahoo dot ca
7 years ago
I've (painfully) discovered that installing PHP5 with "make install" under SuSe 9.2 is NOT a good idea.
http://www.aditus.nu/jpgraph/apache2suse.php
This page explains how to install it without breaking everything that's php-related in the Apache2 configuration. Its first purpose, though, is to show how to have php 4 and 5 to cohabit properly.
up
down
0
frank@ethisoft
7 years ago
Using Apache2 & PHP5 work perfectly fine & safe together.
- all core modules are safe in Zend Engine 2
- third-party-libraries should be avoided
- semaphores and shared memory enables you to ensure yourself that your application/website is thread-safe also with non-thread-safe PHP modules!
up
down
0
happyboy at php dot org
8 years ago
FILE TRUNCATED!!

during the make process should u receive an error declaring ext/ctype/ctype.lo (or another file) is truncated then you need to 'make clean' prior to a healthy 'make' and 'make install.'

looking into your ext/ directory you may find the offensive file to be 1 byte long.
up
down
0
mihai dot sandu at gtstelecom dot ro
8 years ago
For the SuSE9.2 install of PHP5.
First:
If building on a x64 platform, please set LDFLAGS="-L/usr/lib64" before configure.
As for install, it suffices to go to /etc/apache2 and:
ln -s sysconfig.d/loadmodule.conf httpd2-prefork.conf
and then make install
up
down
0
neil
8 years ago
To install mysql and mysqli with PHP5 do the following:

after doing:

./configure --with-mysql=/path/to/mysql_config --with-mysqli=/path/to/mysql_config

do this:

"
   if you want to use both the old mysql and the new mysqli interface, load the Makefile into your editor and search for the line beginning with EXTRA_LIBS; it includes -lmysqlclient twice; remove the second instance
"

then you can:

make
make install

.....
Pleasse note: you must have mysql-dev installed (RPM or source) or you will not have the mysql_config file at all.  The standard, server, and client installations of MySQL do not include it.  I read somewhere that the mysql and mysqli paths must be identical.

Quoted from Michael Kofler at the following link:
http://www.kofler.cc/forum/forumthread.php?rootID=3571
up
down
0
Dan Scott (dan dot scott at acm dot org)
8 years ago
Building PHP 5.x with Apache2 on SuSE Professional 9.1/9.2

SuSE uses a rather fragmented set of Apache configuration files stored in /etc/apache2/. When you configure PHP 5.x with:

$ ./configure --with-apxs2=/usr/sbin/apxs2
$ make

everything builds just fine; but when you issue:
$ su -c "make install"

the unconventional Apache conf file layout confuses the install-sapi section of the Makefile and the process halts with the following error:

apxs:Error: Config file /etc/apache2/httpd2-prefork.conf not found.
make: *** [install-sapi] Error 1

At this point only the PHP SAPI library has been copied into place; the rest of the files (like PEAR scripts, PHP-CLI, etc) have not been installed. But never fear! You can overcome this problem with the following steps:

1. Edit Makefile and change the following line to remove "install-sapi":
install_targets = install-sapi install-cli install-pear install-build install-headers install-programs

2. Issue the make install command again:
$ su -c "make install"

3. Add the PHP module & type instructions to the Apache configuration. As root, create a new file, /etc/apache2/conf.d/php5.conf that contains the following lines:

LoadModule php5_module /usr/lib/apache2/libphp5.so
AddType application/x-httpd-php php

--- And that's it. Everything else is just as the documentation suggests it should be.
up
down
-2
nabil at world dot com
5 years ago
I couldn't start Apache2 after installing PHP5 in archlinux, I got this error :

Cannot load /.../libphp5.so into server: /.../libphp5.so: undefined symbol: _efree

The solution was "make clean" on the PHP5 source directory, then ./configure, make & make install again.
up
down
-3
peep at imtarget dot identicloak dot com
4 years ago
Configuration notes for cent5.2, April 2009.
----------------------------------------------------
Note: I'll walk you through my steps, so you can do it custom yerself. It's possible that I am an idiot and there are much easier ways to do this. But this worked for me. Also , you could just use my configure script and yum command line and probably have it work okay.

Scenario
----------
I'm setting this up for a fairly typical drupal install, with a mysql backend. I set up the dev server with the php package from the cent yum repo, and the customer ran Drupal with that for a while, but now wants a more current PHP than the cent package provides.

my approach for determining required modules
------------------------------------
1. get the list of the modules
    $ php -m | grep -v -e Modules] -e ^$ > php-default-modules
2. create the configure script
    $ for i in $(cat php-default-modules); do echo -n "--with-$i ">> phpconfigure.sh ;done
3. run the configure script, and iterate through the "Configure script errors" section below until it completes properly
4. at the end of the output, look for a notice of unknown options

    Notice: Following unknown configure options were used:
    --with-date
    --with-gum-disease

    Check './configure --help' for available options

5. as suggested, execute './configure --help' and correct the options. The "for" command above indiscriminately inserts "--with-" for all modules, but bundled modules may require "--enable-" instead, so mostly you'll be changing those. For modules that are enabled by default you'll need to remove the entry.

6. Add anything else you personally want or need. I like to add "--enable-safe-mode".

I configured with the following command line:

php-5.2.9]$ ./configure --with-mcrypt --with-mhash --with-bz2 --enable-calendar --with-curl --enable-dbase --enable-exif --enable-ftp --with-gd --with-gettext --with-gmp --with-iconv --enable-mbstring --with-mime_magic --with-mysql --with-mysqli --with-openssl --enable-pcntl --with-pdo_mysql --with-pdo_sqlite --with-pspell --enable-shmop --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-zlib --enable-safe-mode

as such, i needed a number of packages installed. Now I haven't tracked additional packages over base--there may be required packages that I happened to have installed for other things. But this is a pretty good list, i reckon:

php-5.2.9]$ sudo yum install mcrypt libmcrypt mhash libmhash libxml2-devel openssl-devel bzip2-devel curl-devel libjpeg-devel libpng-devel gmp-devel mysql-devel aspell-devel zlib zlib-devel

Configure script errors
--------------------------------------------
In my experience, these errors have been due (with any software, PHP included) mostly to missing development packages, which contain the libraries and headers needed to compile support for that library's function into the application.

This becomes a process of:
-executing the ./configure script and looking at the error
-installing the devel package providing the resource referenced by the error (google using the error as search term as needed)
-repeat until the ./configure script makes it through without error

Upshot: identify the software referenced by the error, and install it.

Example
-----------
Example error:
    configure: error: Cannot find OpenSSL's <evp.h>
Example explanation
    configure is looking for a header (and probably a lot of other stuff) from a missing openssl package.
Example solution:
php-5.2.9]$sudo yum install openssl-devel

Compiling (and testing and submitting)
----------------------------------------------
with ./configure working, you're ready to compile. I think it's important to test and submit the tests to the developers, you do what you want.

$ make;make test

Installing
-------------
$sudo make install

(be sure you, heh, have the system php removed before you do this step. seriously)

Best of luck!

網(wǎng)頁(yè)標(biāo)題:Unix系統(tǒng)下的Apache2.x
文章轉(zhuǎn)載:http://jinyejixie.com/article26/ppidjg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、響應(yīng)式網(wǎng)站、虛擬主機(jī)、品牌網(wǎng)站設(shè)計(jì)外貿(mào)建站ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
子洲县| 天柱县| 元朗区| 囊谦县| 奉贤区| 广安市| 建昌县| 双辽市| 永修县| 林州市| 于都县| 桐柏县| 宝应县| 呼玛县| 鄂托克前旗| 都江堰市| 石楼县| 东明县| 漳浦县| 永城市| 泰来县| 商南县| 北海市| 平湖市| 独山县| 陵川县| 信阳市| 新津县| 盘山县| 灵宝市| 高陵县| 塘沽区| 茶陵县| 阳山县| 旬阳县| 广河县| 三河市| 漾濞| 晋中市| 龙游县| 宁化县|