呵呵,楼主是不是看多了那个人(具体是谁我不说)说XAMPP怎么不好对吗??其实,每个东西都有好坏 ,刚开始用XAMMP之类的东西,其实也无妨,如果要做高手,一般都会在学会p h p 后会自动自己配置环境 的 .

解决方案 »

  1.   

    非常同意楼主的意见
    这里指正一下,
    “发现大家都喜欢教人先学配置再学PHP 
    反对使用XAMPP之类的东西 ”
    其实就连初学者自己也是这样认为的,认为一步一个脚印比较好,
    其实不然,既然是程序员,我觉得还是关注程序,关注代码最好要多一些,服务器的东西以后可以慢慢了解,慢慢学习
      

  2.   

    好吧,我就是那个人,我很固执。所以再说一次,XAMMP这种东西很愚蠢。我承认csdn的技术人员总体上水平很低,但是这不是使用自动安装的理由。我觉得使用自动安装的人,是在偷懒。就好像现在的PHP开发人员,几乎没人懂算法,没人懂网络原理,没人懂二进制。很多人都不愿意从最底层学起,因为这个学习成本太高。偷懒本来没什么不好,但是也看偷在哪里。很多人之所以觉得安装开发环境很麻烦,是因为不肯花一天的时间去了解一个web程序大致上的结构。如果知道了web server,php解释器,html,http的区别,知道mysql和php的通讯方式,我想装个[L]AMP是没什么问题的。就算遇到问题,也可以很轻松解决。对我个人来说,之所以不用自动的整合安装的另外一个理由,是因为我需要在不同版本,不同编译参数下测试东西。所以整合安装不切实际。当然除了windows用户,我想没有其他平台的用户会去用整合安装。或许有不少用户是通过linux发行版的包管理系统来装,我是不会这么做的。我脾气不好,谈这种东西伤和气,实在不想谈,不过还是谈了下,哎。
      

  3.   

    如果只是试试玩玩,用xammp就可以了.无伤大雅。
    如果是高手,闭着眼也能配置好PHP的运行环境,用啥也无所谓,图个省事.
    如果是专心想学PHP的初学者,建议买本实实在在的教程,一步一步的安装PHP工作环境,先从windows开始,然后哪怕是在虚拟机上安装linux下php的工作环境也好.换句话来说,你连PHP的环境都不会配置,还想在PHP方面有啥发展.呵呵,无语.社会虽然浮躁,大环境也是如些,但不能成为偷懒的理由,最终只能是害人害已.言尽于此.不针对任何人.
      

  4.   

    之前本人就是用XAMPP的,但学到后来还是自己配置一下,这样的话能更了解PHP。支持有一定的PHP了解后就有必要自己配置一下PHP的运行环境
      

  5.   

    另外,说csdn是中国最大的技术社区,别的语言我不知道.
    PHP版至少不是!
    呵呵.
      

  6.   

    我这篇文主要是针对初学入门的情况
    我也认为学习服务器配置是必需的
    但正如jakey9826所说
    各种程序语言大同小异,当然在深入的情况下各有分支强项
    如果本身有一定基础,喜欢怎样玩都可以但如果以一个在程序初学者的角度出发
    一个简易的环境可以令他们更容易投入
    有多少人被一个服务器配置打得心灰意冷?不少吧!
      

  7.   


    有点道理好像php发明出来本来就是帮助开发人员偷懒的.我始终觉得做php 达不到理想中的程序员的高度很深度但是,如果学得好,混口饭吃,拿高薪,问题也不大
      

  8.   

    初学者如果因为环境配置不好就放弃,这些放弃的对PHPER来说,是损失吗?再说,配置环境很难吗?
    找本书,按照教程一步一步的安装下来,就算有问题发生的时间,将错误google一下, 也能找到答案吧.
      

  9.   

    这样的帖子以前在BCB板块见的太多。我个人并不反对使用类似XAMPP这样的整合系统。不过在我们深入谈的时候,我先把我的开发、服务器环境和大家说说:我家里的服务器用的是2F,安装的是LAMP,但是,我也不是所谓的一个、一个组件手工安装的,我用的是最简单的apt-get install。然后,再通过在开发机中用ssh去修改相应的远程配置文件来符合我的需要。我的开发环境用的是Vista,安装的是XAMPP。服务器和开发机之间的代码同步通过svn来完成。在Windows下开发主要是因为我用的PHPED只有Windows版本,而我的2F又没有图形界面……===============开发的时候,我的目的是快速的知道我的这个方法、思路、整个站点的流程可行不可行,我并不太注重优化(当然,一些最最基本的代码优化还是有的)。这时,我认为最重要的是“啊!出来了!”而不要被服务器的一些细微配置影响了结果的呈现。================
    举一个极端的例子,每个写PHP的几乎都要用MySQL,用MySQL必然要写SQL语句。但是,我们有必要在最开始就深入到MySQL的服务器架构并理解其所有的配置吗?当然MySQL还算简单,如果是Oracle呢?还有一个例子,我最近在用Symfony改写我的站点,但是我并不会(至少是目前)深入去了解它这个框架的内部机制。这些工作,是要等我用Symfony改造完毕然后发现需要改进的地方时才去看的。===============一个PHP程序员,用好、用精PHP是第一位的,了解需求并迅速转化到对应的编程模型是第二位的,懂得分析错误、优化是第三位的。对于一个初学者来说,能够迅速看到自己的第一个Hello PHP程序通过localhost调用成功,自己的第一个MySQL连接能返回数据是非常有意义的。这样才能增进初学人员的信心,从而更喜欢PHP。对于一个已经有一定基础的PHPer来说,需要了解更多的关于MVC、框架、OO、模式、模板等概念,所以也不一定要有时间、有精力去看这些配置的东西。对于一个真正的PHP大牛来说,那么………………这些配置其实已经如同那浮云了……
      

  10.   

    当你自己掌握了如何手动配置环境,并且深入了解了amp的工作原理后,xampp无疑是最好的选择,否则一遍遍的做重复无意义的配置,很耽误时间而且没意义。xampp又不是无法再修改什么了,你不满意其中的某些设置,可以再手动修改嘛。只要你对amp的工作原理有深入的了解,xampp经你修改后一样可以用作生产环境,它默认的设置的确是很不安全的。
      

  11.   

    我在服务器上配置nginx + php-fpm和我在本地使用集成开发环境都是适当的
      

  12.   

    其实,自己也可以搞个XAMPP之类的东西,给自己用。为了不重复做,你可以选用XAMMP。为了要自己配置PHP环境,学多点东西,你可以选用自己配置环境。但是,为了能自己学到东西也不重复做,你可以自己编一个类似XAMMP的东西,这样不是更好吗???
      

  13.   

    这证明你只知道runtime配置,不知道compile-time的配置。用于生产环境的东西,需要把符号表都去掉,把所有东西static link,需要gcc -O3,需要--enable-assembler,需要disable所有不需要的东西,需要根据环境来决定是否需要开启zts等等。把xampp用于生产环境,你这种想法太可怕了。而且你说xampp不安全,能否举例?我倒不知道它默认配置有什么不安全。
      

  14.   

    如果一个做了3年以上的PHP程序员还沉浸在“MVC、框架、OO、模式、模板”里,那么趁早转型吧。如果还在PHP技术的道路上发展,那么不可能不去了解和它相关的,更深入的东西。我就问你们几个问题吧。
    1)一个md5串,在数据库里,你们用什么字段类型来存储?
    2)描述一下引用和复制赋值在php的内部实现,主要描述一下zval的变化。
    3)描述一下ip/tcp/http的关系如果上面的回答不出来,你应该是往另外一个方向发展了,那么我重新问:
    1)你是否觉得smarty和cakephp很傻逼?为什么?
    2)你觉得程序架构重要,还是业务逻辑重要?如果全部都回答不出来,你要么还处于很初级的状态,要么你已经打算或者已经转型了。
      

  15.   

    如果生产环境上的东西是利用apt-get,xampp或者类似的东西安装的,那么我只能说你的应用太简单了。编译上的优化我就不再说了。我假设这么一个场景,你有100台服务器做web,软件安装和配置完全一样,那么你是怎么管理这些软件?如果你是到每台机器上去apt-get install,那么效率就太低了。while;do ssh "apt-get install";done方式吗?安全性得不到保证。因为需要所有机器对某一台开发login权限。我的做法大概有两种:
    1)通过nfs,只在一台机器上编译和配置,其他都是NFS过来。缺点就是没有冗余,如果这台作为编译和配置的机器坏了,那么所有东西都会丢失。
    2)通过rsync,在一台机器上编译配置之后,同步到其他机器。不过reload我暂时没有好的办法,如果用ssh "command",安全性不够好。现在只能是在所有机器建一些脚本定期执行,然后检测到某些文件有更新,就重新启动相关的程序。我另外假设一个场景,你现在需要把apache http换成nginx,用fcgi模式。你还能apt-get吗?就算apt里有这个模块,你敢用吗?你不用php-fpm作为backend,简直就是找死,因为官方的实在太糟糕了。
      

  16.   


    如果你只是在与有着三年经验的PHP程序员说这样的话,你可能说得过去。但是,你想想,一个初级甚至没有编程经验的人去学一个PHP,要它自己配置环境,的确有点困难。就因为这样,XAMPP之类的东西有了,这样,当那个初级人员学会了PHP,查阅了更多的资料,学会了更多的知识,倒回来再学习配置环境,这肯定是一件容易的事情,因为,它已经懂得了,配置环境每一个步骤是有什么作用。。
      

  17.   

    当然,我也不反对surfchen的看法,他的看法也是有他自己的见解。
      

  18.   

    对不起,你说的关于apache的东西我确实不了解那么多,不过我想,这不是一个程序员必须具备的。你具备了我可以夸你在这方面很优秀。我想百分之九十的人在用amp的时候,就算是自己下载源代码编译,都不会改动apache的源代码。我只记得apache1里面的prefork和worker模式的最大连接数需要重新改动一个.h文件。在apache2里面httpd.conf文件里面就可以修改了。你说的那些编译时该disable的东西,我编译apache时没加过那么多参数。可能对于apache确实没你那么了解。对于php,我只知道debug模式需要disable,其它的没有必须要disable掉的参数。据我所知,很多家中小型网站的服务器用的都是自己修改过runtime配置的xampp包,你不要太武断的否定一切!另外,xampp默认配置第一个不安全点在于 - 它可以列目录!不知你是否明白列目录对于生产环境有多大的威胁。一个人在某个领域可能会强于他人,但你不可能在任何方面都强于他人,所以不要太自大的以自己的强项去贬低别人。另外,你在20楼那些话我觉得纯粹一派胡言。php只作为一种工具,任何人都会使用它,但不一定非要去挖掘它的底层。oop,mvc作为开发模式,与你所谓的底层是风马牛不相及的东西。不同的路而已。
      

  19.   

    分......大大的有 a_a===============================================================================我这个帖子没有针对任何人的意思
    只是想就编程初学者入门时的问题
    发表一下个人意见要在PHP的道路上走得更远
    学习服务器方面的知识是必需及有重大作用的===============================================================================但过于复杂的入门环境
    的确会令很多人打退堂鼓而jakey9826在上面提到那不算是什么损失
    在这点上我有些不同的想法
    编程是需要交流的,那怕对方是一只菜鸟
    在学习的过程中,一个可供交流的对像很重要
    相信各位都应该认同这点
    如果不是的话,大家都不会在这里回答提问,更不会回我这个帖子无数人曾经在编程的大门外徘徊
    但有多少人会跨进来呢?我也相信大家都有体会!至今我还记得...
    那时呆呆的我完成了第一个简单的小软件时...那种心情
    真的很简单,就将两个数相加后输出而已 =_=||
    试试回忆一下自己的第一个程式 ^_^当时的成功就像一个美女站在这道名为编程的大门内...把我勾引进去了
    不过如果在我放弃前还无法成功的话,我想那美女就变成恶狗...把我吠走了
    今天在CSDN出现的我,源于入门时小小的成功一个入门环境的友善程度很大情况下决定了门口站的是什么东西
    任何一个不行其门而入的人,都曾经可能成为未来的志同道合===============================================================================又打了很多字...其实还有其他理由...有空再说...各位踊跃发表意见啊!!过几天再加分!!
      

  20.   

    其实也真的,环境是很容易配置的,在httpd.conf添两句话,在php.ini设置一下就可以了。
      

  21.   

    说句实话我头疼你说的这个话题
    不错自动安装确实方便,但是配置起来真的很麻烦
    我学LAMP环境一直是在RH9下学的
    然后自己安装的时候装的UBUNTU的8。10
    用LAMP包,确实很强大,GD和PDO什么都自己安装进去了
    但是配置文件非常的散乱
    APACHE的配置已经打乱到其他地方去了
    不熟悉的人真的很难上手去配置
    没有办法,学习吧
    我还是天天GOOGLE的去看
    上UBUNTU的WIKI关于源安装就是没有
    都要会
    我个人觉得还是手动的好,什么地方出问题自己清楚的知道
      

  22.   

    这个....大家说的都有道理 :)不过看起来surfchen的工作更偏向于系统管理员一点?
    如果公司分工细点,php developer是不用关心这些的自己学习另谈,愿意花时间在哪方面都可以,至于有些人只会问,自己连google都懒得用,手册也不翻实在是没什么话说,
    有些人问之前看得出来连基本的php书都不愿意看一点,也没什么话说,
    还有人连问问题都懒得写,要大家如审犯人般反复提问,才挤牙膏样的慢慢把自己要做什么说出来,
    你问多了他还烦.....:)
    其实方法不重要.........态度才重要......
      

  23.   

    我先承认我自己不是什么高手,甚至不是一个专业的开发人员,编程只是我的业余爱好。我对底层的东西的关注一直不那么深入。在最早的时候,用Turbo C/C++开发时,就不是特别关注那些所谓的编译开关。到了BCB/Delphi开发时,只是简单的用控件,也不关心控件怎么实现。surfchen说的一些话题当然有其探讨的意义,但是我的立足点是在那些象我这样对PHP有兴趣但又不愿意为了那些在1%的情况下会带来20%性能提升、安全提升的设置上浪费了80%的时间的人。在这样的情况下,类似XAMPP的继承系统就有优势和好处。其用户群的存在更是可以套用“存在即合理”来佐证。你提到的问题我答不上来,因为我自己的应用还没有到这样的层次。同时,我也感到羞愧,毕竟我虽然用PHP有了2-3年的时间,但是毕竟不能和专业PHP程序员相比。不过我很少问技术问题,有问题我会查手册、看书去解决,甚至退而求其次。这应该是只为自己的兴趣开发的一种特权了吧。31L的最后一句话我很赞同,态度最重要。环境、工具都只是那浮云。
      

  24.   

    你觉得XAMPP里面apache的config文件乱,其实我觉得它并不是把它打乱,而是更加合理的放到该放的地方。记得好像是放在一个extra目录里面了,httpd.conf是用来做最常规配置的,其他一些如关于虚拟主机,线程控制,用户目录访问之类的配置它分别放到了httpd-vhosts.conf,httpd-mpm.conf,httpd-userdir.conf文件里面,你可以单独设置它们,设置完毕后,在httpd.conf里面include它们一下。其实这样划分更加合理。我说xampp可以用于生产环境,当然是需要自己合理修改后的,有人说不止运行时配置需要改,编译时配置也很危险。这个大不了你可以rebuild嘛。xampp的配置大部分都是按照最标准的方式来配的,其实不需要改动的地方远远大于需要改动的。这就是它的价值所在嘛。xampp的官方声明上也说了,默认配置下的xampp是不适合生产环境的,但经过自己修改,消除大部分安全隐患后也可以用作生产环境。
      

  25.   

    哈哈,就象dos
    現在都是windows 了
      

  26.   

    赞成你的说法。
    并不是所有人都必须深入研究所有的东西。跳过配置,直接接触语言,直接、高效。很多人吵吵自行配制,而这些人中有多少能真正看懂apache、mysql和php手册的?
    能够真正理解所有的安装步骤都是在干什么?
      

  27.   

    我觉得对于初学者 还是 先学习手动配置 自己的完整的 服务器才好  并且 理解所有的 配置信息  这样 对于以后的PHP学习 更加有好处   就像楼主说的一样   即使是 先学会了 手动配置 再使用XAMPP也不迟么   这样页可以打造自己的服务器   自己的见解
      

  28.   

    有一点很重要:干好一件事就是非常了不起的。
    我当初自己配置的,在win环境下,如果一开始我就了解了xampp,我毫不犹豫的选择xampp。
    想做万事通吗?我的观点是,万事通就是狗屁不通(SORRY,我很喜欢粗话)。
    比如jquery,仅仅是一个javascript库,但一个程序员只需要看看文档就完全可以使用jquery了,如果你要精通,起码考虑浏览器兼容问题,等你精通了恐怕...
    再比如fckeditor,总不能趁着牛年吹牛说你几天就能写个同样牛的编辑器吧,
    很奇怪他们的官方网都是用drupal的,难道他们自己没能力开发一个自己的网站?
    N多网站的帮助文档用了mediawiki...
    有YUI,为什么还自己苦思冥想个完美的设计框架
    如果你想做网页设计,又喜欢flash开发,同时爱上java,不幸梦想做DBA,还觉得自己是块网站管理的料,或者干个系统架构师,还想创业当老板...(省略1000000字),这说明你很危险了。
    百度用了fckeditor
    google用过jquery
    我不是不爱学习,但是什么都学习就让我什么都学不好
    xampp、fckeditor、zf、cakephp、jquery、yui、dojo...
    它们存在是理直气壮的。
    当然有可能你理想做个php程序员,结果在配置PHP环境过程中将你打造成了一个管理员奇才,恭喜牛年发财
      

  29.   

    补充一下,我在一台WIN服务器上安装了xampp,跑了五六个小网站,一直很稳定。
    xampp官方说的很清楚,运行一下安全配置,做服务器也可,xampp是发行版软件,又不是异类。
      

  30.   

    在香港这边要~今天要上班了 >_<
      

  31.   

    刚学php两个月,也是用xmapp.
    LZ 8年前就接触php了,汗