仓酷云

标题: PHP教程之把PHP装置为Apache DSO [打印本页]

作者: 只想知道    时间: 2015-2-4 00:17
标题: PHP教程之把PHP装置为Apache DSO
PHP原始为Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor"。注意不是“Hypertext Preprocessor”的缩写,这种将名称放到定义中的写法被称作递归缩写。apache   PHP 常常和Apache Web办事器一道用于Linux/Unix平台。当咱们在Apache情况下装置PHP的时分,你有三种装置形式可供选择:静态模块、静态模块(DSO)和CGI。

我建议你最好把PHP装置为Apached的DSO ,这类装置形式的保护和晋级都相当复杂。例如说,假定你本来只装置了PHP的数据库撑持功效。可过了几天以后你又决意要为PHP添加加密功效。很复杂,你只需键入make clean号令,然后增添新的设置装备摆设选项,接着再履行make和 make install号令便可。如许,新的PHP模块就会被装置到Apache上的得当地位,你只需从头启动Apache就一切OK了,固然,全部进程完整不必从头编译Apache。

装置新版本的Apache和装置作为Apache DSO的PHP的复杂步调以下所示:

1. 从Apache软件基金会这一站点下载Apache办事器软件的最新版根源代码。
2. 把代码文件放到/usr/local/ 或/opt/ 等适合的目次下。
3. 用Gunzip号令对代码文件解紧缩,然后你可以失掉响应的*.tar文件。
4. 键入以下的解包号令把以上的tar文件放到形为apache_[version]的目次下:

tar -xvf apache_[version].tar

5. 进到/usr/local/apache_[version] 目次(或在下面步调中你所指定的目次)。
6. 键入上面的设置装备摆设号令,用你设定的途径(好比/usr/local/apache[version]等,注重前面不要跟斜线!)代替[path]参数,同时你还要启用mod_so参数以答应Apache利用DSO。

./configure --prefix=[path] --enable-module=so

7. 回到号令提醒行键入make号令并守候号令履行完成再次回到号令提醒形态下。
8. 键入make install。

到这个时分,编译器便可创立终究的目次并前往到体系的号令提醒形态下。

接上去装置PHP:

1. 会见PHP主页的下载区域选中最新版根源代码的链接。
2. 把下载的文件放到/usr/local/ 或/opt/等恰当的目次下。
3. 用Gunzip号令对代码文件解紧缩,然后你可以失掉响应的*.tar文件。
4. 键入以下的解包号令把以上的tar文件放到形为php-[version]的目次下:

tar -xvf php-[version]

5. 进到/usr/local/php-[version]目次下(或你指定的目次)。

如今便可编译PHP DSO,其实这里只需求一个需要的设置装备摆设选项--with-apxs(Apache bin目次下的一个文件)--不外,为了体系设置装备摆设更加周全,咱们在这里还增添了对MySQL数据库的撑持。

./configure --with-mysql=/[path to mysql] --with-apxs=/[path to apxs]

6.回到号令提醒行下键入make号令并比及号令履行完成再次回到号令提醒形态下。
7.键入make install号令。

在这个时分,编译器将会创立终究的DSO,并把它放在Apache模块目次下,同时会为你修正Apache的httpd.conf 设置装备摆设文件,以后体系回到号令提醒形态上等待你输出新指令。然后,你便可翻开Apache的httpd.conf 设置装备摆设文件做一些修改:

1. 找到有ServerAdmin字样的一行,到场你本人的电子邮件地址,以下所示:

ServerAdmin you@yourdomain.com

2. 找到以ServerName开首的一行,把前面的参数修正为实践值,好比:

ServerName localhost

3. 找到上面一段:

# And for PHP 4.x, use:
#
#AddType application/x-httpd-php .php
#AddType application/x-httpd-php-source .phps

修正这些设置装备摆设行以便作废PHP 4.0下的某些加在AddType之前的正文,同时你应当添加一些为PHP所利用的文件扩大名,修正后的以上各行看起来能够会是上面如许子:

# And for PHP 4.x, use:
#
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps

保留以上的设置装备摆设文件,回到下级目次,键入以下号令便可启动Apache:

./bin/apachectl start

假如启动时代没有呈现甚么成绩,你便可测试Apache和PHP的装置情形,办法是创立一个名叫phpinfo.php的文件,个中包括了以下的代码行:

<? phpinfo() ?>

保留该文件并把它放置在Apache的文档根目次下(htdocs),然后启动你的Web阅读器,在阅读器地址栏里键入http://localhost/phpinfo.php,阅读器即会以很大的篇幅显示出PHP和Apache体系的各个变量和变量值。

假如你想要从头设置PHP,你需求做的不过乎是履行make clean号令,然后履行带有新设置装备摆设选项的./configure号令,接着履行make和make install。如许,Apache模块目次中就会呈现一个新模块,你只需重启Apache以装载新模块。之前的很多头疼成绩如今就水到渠成了。  讲了这么多,无非是想说:学习PHP不仅要掌握方法,更多的是付出汗水,我不希望看到中途放弃的人,相信自己,相信自己的选择,更要相信自己的能力,如果自己想放弃,暴力一点的话,就自己抽自己一个嘴巴。
作者: 愤怒的大鸟    时间: 2015-2-4 10:47
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
作者: 老尸    时间: 2015-2-8 20:36
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
作者: 金色的骷髅    时间: 2015-2-27 15:39
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
作者: 乐观    时间: 2015-3-3 12:19
做为1门年轻的语言,php一直很努力。
作者: 透明    时间: 2015-3-11 01:21
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
作者: 飘飘悠悠    时间: 2015-3-17 17:50
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
作者: 再见西城    时间: 2015-3-24 08:23
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
作者: 飘灵儿    时间: 2015-4-11 17:13
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
作者: 活着的死人    时间: 2015-4-30 12:09
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
作者: 第二个灵魂    时间: 2015-5-4 10:22
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
作者: 深爱那片海    时间: 2015-5-6 15:12
写的比较杂,因为我也是个新手,不当至于大家多多指正。
作者: 不帅    时间: 2015-6-11 04:41
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
作者: 小妖女    时间: 2015-6-16 20:09
做为1门年轻的语言,php一直很努力。
作者: 蒙在股里    时间: 2015-7-4 01:41
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
作者: 谁可相欹    时间: 2015-7-7 08:26
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
作者: 海妖    时间: 2015-7-12 19:59
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
作者: 分手快乐    时间: 2015-7-14 09:31
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
作者: 小魔女    时间: 2015-7-14 20:57
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
作者: 兰色精灵    时间: 2015-7-20 16:24
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2