仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3344|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网页设计PHP装置成绩

[复制链接]
因胸联盟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-16 00:28:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
那么接下来,这就算学会啦?NO,NO,NO,还早呢,你至尽还没碰过OOP之类的吧?模板呢?成绩   装置
这节将讲述装置过程当中最多见的成绩。PHP 合用于 几近任何的 OS (也许 OSX 之前的 MacOS 除外 ), 和几近任何的WEB 办事器。
要装置PHP, 随着 刊行版里的装置 文件的指引. Windows 用户也应当读install.txt 文件. 这儿也有一些匡助文档 。 1. Unix/Windows: 我的php.ini 应当放在哪? 2. Unix: 我装置了 PHP, 但我每次加载一个文档, 会失掉上面的动静: 'Document Contains No Data'! 怎样回事? 3. Unix: 我利用 RPMS 装置 PHP , 但Apache 不撑持 PHP页面! 怎样办? 4. Unix: 我利用 RPMS 装置 PHP 3 , 然而它没有我需求的数据库编译撑持! 我该怎样办? 5. Unix: 我用 FrontPage 扩大包对Apache打了补钉, 溘然 PHP 中断任务。 是PHP 和 Apache FrontPage 包不兼容吗 ? 6. Unix/Windows: 我装置了PHP,但在阅读器里看我的PHP页面时,空白一片。 7. Unix/Windows: 我装置了PHP,但在阅读器里看我的PHP页面时,我失掉一个 server 500 error. 8. 某些操作体系: 我装置PHP没失足,可是我启动Apache时,失掉一个 undefined symbol errors:
  1. [mybox:user /src/php4] root# apachectl configtest apachectl: /usr/local/apache/bin/httpd Undefined symbols:  _compress  _uncompress
复制代码
9. Windows: 我装置了PHP,但在阅读器里看我的PHP页面, 失掉以下毛病:
  1. cgi error: The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are:
复制代码
10. Windows: 我严厉依照install的请求,可是仍是不克不及让我的php在IIS下任务。
1. Unix/Windows: 我的php.ini 文件应当放在哪?

UNIX下默许它应当放在 /usr/local/lib 目次下。 这是它的 <install-path>/lib. 良多人会在编译时改动它,利用--with-config-file-path 标记。 例如, 你可以如许设它:
  1. --with-config-file-path=/etc
复制代码
然后你可以复制源法式包里的 php.ini-dist 到 /etc/php.ini ,编纂它知足你的当地化需求。
Windows下 php.ini默许的途径是 Windows 体系目次. 假如你在利用 Apache webserver, php.ini 则最早在 Apaches 装置目次下被查找, 例如: c:\program files\apache group\apache. 如许你可以有分歧的 php.ini 对应分歧版本的 Apache(统一台机械上)。
更多细节请查阅 configuration file.
2. Unix: 我装置了 PHP, 但我每次加载一个文档, 会失掉上面的动静: 'Document Contains No Data'! 怎样回事?

这多是由于你的 PHP 产生了core-dumping毛病。 查找你的办事器毛病日记文件,看看是不是属于这类情形。 然后呈报这个毛病。假如你晓得如何利用 'gdb',你可以供应一个 backtrace 在你的毛病呈报里。这将会对开辟人员处理 这个成绩有很大匡助。假如你是在将PHP作为Apache模块利用,那末请按上面的步调做:


  • 中断 httpd 历程

  • gdb httpd

  • 中断 httpd 历程

  • > run -X -f /path/to/httpd.conf

  • 阅读你方才失足的 URL

  • > run -X -f /path/to/httpd.conf

  • 假如你还有 core dump, gdb 如今会告诉你

  • 打入: bt

  • 在你的 bug report里应当包括backtrace 。 这些会被发往 http://bugs.php.net/


假如你的剧本利用了正则表达式函数 (ereg() and friends), 你应当确保你编译 PHP 和 Apache 用的是统一个正则表达式包。 在 PHP 和 Apache 1.3.x 这个进程是主动停止的。
3. Unix: 我利用 RPMS 装置 PHP , 但Apache 不撑持 PHP页面! 怎样办?

假定你装置了 Apache 和 PHP(从 RPM ) , 你需求反正文或增添一些行在你的 http.conf 文件里:
  1. # Extra ModulesAddModule mod_php.cAddModule mod_php3.cAddModule mod_perl.c# Extra ModulesLoadModule php_module         modules/mod_php.soLoadModule php3_module        modules/libphp3.so     /* for PHP 3 */LoadModule php4_module        modules/libphp4.so     /* for PHP 4 */LoadModule perl_module        modules/libperl.so
复制代码
And add:
  1. AddType application/x-httpd-php3 .php3    /* for PHP 3 */AddType application/x-httpd-php .php      /* for PHP 4 */
复制代码
... 到全局域里, 或到你想要的 撑持PHP的虚拟域里。
4. 我利用 RPMS 装置 PHP 3 , 然而它没有我需求的数据库选项撑持! 我该怎样办?

由于 PHP 3 内建撑持的关系, 编译一个完全的可适于一切使用的 PHP RPM是相当坚苦的。 在 PHP 4有谈到这点。 对 PHP 3, 咱们只好建议你利用INSTALL.REDHAT (在 PHP包里)描写的机制。 假如你必定要利用 RPM 版的 PHP 3, 读...
RPM 保证理器设置 RPMS 复杂的装置,不带数据库撑持 and 由于RPMS 利用 /usr/ 而不是尺度的 /usr/local/ 目次寄存文件. 你需求告知 RPM 文件你要撑持哪一种数据库和它们的最下级目次的地位。
上面的例子将注释在Apache形式下如何撑持通行的数据库Mysql.
固然一切的这些可以稍作修正,以撑持其它的PHP撑持的数据库。咱们假定你装置了 MySQL and Apache ,完整是用 RPMS 装置的。


  • 起首,移去 mod_php3 :
    1. rpm -e mod_php3
    复制代码

  • 然后获得rpm包并装置, 不是 --重编译
    1. rpm -Uvh mod_php3-3.0.5-2.src.rpm
    复制代码

  • 编纂/usr/src/redhat/SPECS/mod_php3.spec 文件
    在 %build 一节里增添你想要的数据库撑持, 和途径信息。
    对 MySQL 你应当增添:
    1. --with-mysql=/usr \
    复制代码
    %build 节看起来象:
    1. ./configure --prefix=/usr \    --with-apxs=/usr/sbin/apxs \    --with-config-file-path=/usr/lib \    --enable-debug=no \    --enable-safe-mode \    --with-exec-dir=/usr/bin \    --with-mysql=/usr \    --with-system-regex
    复制代码

  • 修改完成后,象上面如许重编rpm :
    1. rpm -bb /usr/src/redhat/SPECS/mod_php3.spec
    复制代码

  • Then install the rpm
    1. cgi error: The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are:0
    复制代码
重启 Apache,你已失掉了rpm下的Mysql的撑持。 注重到这类做法比你从头失掉一个 PHP 3 的tarball 代码,依照 INSTALL.REDHAT 的指引一步一步做要轻易很多。

5. Unix: 我用 FrontPage 扩大包对Apache打了补钉, 溘然 PHP 中断任务。 是PHP 和 Apache FrontPage 包不兼容吗 ?

不是, PHP 和 FrontPage扩大包运转得很好.。成绩是FrontPage 包修正了几个Apache 布局参数,而PHP要用到它们.在FrontPage扩大包被打上后, 从头编译 PHP (利用 'make clean ; make') ,会处理这个成绩。
6. Unix/Windows: 我装置了PHP,但在阅读器里看我的PHP页面时,空白一片。

在阅读器里用'检查源文件'看你的剧本,你能够会发明你看到的是源法式。 这暗示 web server 并没有送剧本到PHP去履行。一定是办事器设置装备摆设上哪儿出了错。 细心反省PHP装置的 server 设置装备摆设。
7. Unix/Windows: 我装置了PHP,但在阅读器里看我的 PHP页面时,我失掉一个 server 500 error。

这是办事器在运转 PHP 时产生了毛病。 为了看到可读的毛病信息,在号令行,改动目次到 (php.exe Windows)地点目次, 运转 php -i. 假如有任何成绩,具体的毛病信息就显示出来了,它会告知你下一步该做甚么。 假如你失掉满屏的HTML代码 (phpinfo() 函数的输入), 那末PHP任务正常,这个毛病就是因为办事器设置装备摆设激发的,应当细心反省。
8. 某些操作体系: 我装置PHP没失足,可是我启动Apache时,失掉一个 undefined symbol errors:
  1. [mybox:user /src/php4] root# apachectl configtest apachectl: /usr/local/apache/bin/httpd Undefined symbols:  _compress  _uncompress
复制代码

这个成绩其实与 PHP 有关, 而与 MySQL 客户端库有关。 --with-zlib,有些操作体系需求,而有些不需求。MySQL FAQ已讲述了这个成绩。
9. Windows: 我装置了PHP,但在阅读器里看我的PHP页面, 失掉以下毛病:
  1. cgi error: The specified CGI application misbehaved by not returning a complete set of HTTP headers. The headers it did return are:
复制代码

这是 PHP 基本没有发生任何输入。 为了看到可读的毛病信息,在号令行,改动目次到 (php.exe Windows)地点目次, 运转 php -i. 假如有任何成绩,具体的毛病信息就显示出来了,它会告知你下一步该做甚么。 假如你失掉满屏的HTML代码 (phpinfo() 函数的输入), 那末PHP任务正常。
一旦PHP在号令行形式下任务,再看看你的剧本法式, 它仍是掉败,多是由于以下缘由:


  • 你的PHP剧本的权限允许。 php.exe, php4ts.dll, php.ini 或任何你能够装入的PHP文件,它样都必需能被匿名 internet 用户 ISUR_<machinename> 会见。

  • 剧本文件基本不存在(或不是你以为的地位。)请注重在IIS里,你可以壅塞这个毛病,做法是在设置剧本映照目次时, 选上'check file exists'框。如许假如剧本不存在,办事器会前往一个404毛病。 如许做也有其它的一些优点, 就是IIS仅为你做经由受权的操作。

10. Windows: 我严厉依照install的请求做,可是仍是不克不及让我的php在IIS下任务。

肯定任何想要运转PHP的用户有操作php.exe的权限! IIS 利用匿名的internet用户,它是在IIS装置时体系主动增添的。 这个用户需求操作 php.exe的权限. 还有,任何需求受权的用户也必需有会见 php.exe的权限。 在 IIS4下,你要告知它PHP是一个剧本引擎。   另外要叮嘱各位的是,抵御诱惑,ASP/PHP/JSP/.NET的对比也许会让你无所适从,你也许学了一半PHP,又开始打C#的主意,或者有人说JAVA很强,这个时候的你绝对不能动摇,哪怕你真想学。
若相依 该用户已被删除
沙发
发表于 2015-2-16 04:27:36 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
不帅 该用户已被删除
板凳
发表于 2015-2-17 11:28:25 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
柔情似水 该用户已被删除
地板
发表于 2015-2-21 06:01:45 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
飘飘悠悠 该用户已被删除
5#
发表于 2015-2-25 07:14:14 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
愤怒的大鸟 该用户已被删除
6#
发表于 2015-2-26 19:20:21 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
再见西城 该用户已被删除
7#
发表于 2015-3-6 21:09:13 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
兰色精灵 该用户已被删除
8#
发表于 2015-3-15 15:45:44 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
金色的骷髅 该用户已被删除
9#
发表于 2015-3-18 12:28:25 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
谁可相欹 该用户已被删除
10#
发表于 2015-3-20 04:04:23 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
山那边是海 该用户已被删除
11#
发表于 2015-4-6 01:10:56 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
若天明 该用户已被删除
12#
发表于 2015-4-11 01:33:12 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
小妖女 该用户已被删除
13#
发表于 2015-4-21 07:41:31 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
再现理想 该用户已被删除
14#
发表于 2015-4-22 11:05:16 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
爱飞 该用户已被删除
15#
发表于 2015-4-28 11:48:11 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
变相怪杰 该用户已被删除
16#
发表于 2015-5-6 13:11:49 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
精灵巫婆 该用户已被删除
17#
发表于 2015-5-9 12:33:08 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
只想知道 该用户已被删除
18#
发表于 2015-5-9 21:22:16 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
小魔女 该用户已被删除
19#
发表于 2015-6-8 08:13:51 | 只看该作者
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
冷月葬花魂 该用户已被删除
20#
发表于 2015-6-15 00:30:13 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-20 23:38

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表