Sunday, July 20, 2008

Google Map API

1. documentation

http://code.google.com/intl/zh-CN/apis/maps/documentation/index.html

2. Some tutorial

http://dev.leck.com/gsupport/

http://www.developer.com/lang/jscript/article.php/3615681

Thursday, July 17, 2008

Web Development Resources

Good Joomla tutorials(****)
http://www.phpeveryday.com/index.php
fff
Joomla documentation (****)
http://docs.joomla.org/Main_Page

CSS resource
http://www.cssjuice.com/

1. CSS Menu and navigation bar (*****)

http://css.maxdesign.com.au/index.htm

2. Write header background with three images (left, middle, right)

http://www.pixy.cz/blogg/clanky/rubberheaders/

3. Create rounded corners with Joomla

http://docs.joomla.org/Creating_rounded_corners

4. 25 rounded corners with CSS (****)

http://www.cssjuice.com/25-rounded-corners-techniques-with-css/

5. javascript

http://mootools.net/

Wednesday, July 16, 2008

微软(美国)产品开发组的团队角色

UI设计人员是对产品的使用界面进行设计和订正的人员。 Usability Engineer是检验UI设计的合理性的人员

在很多团队,真正的界面设计都是由PM做完了Spec,才找UI设计人员来征求意见。像我们团队,我的设计规范书写完后,我才找UI设计人员来,他们所做的也就不过是对我的设计作小改动,如那些英语词句用得不妥,哪里的按钮该改变大小,等等。我所知道的其它视窗操作系统的团队,也是差不多。这主要是因为我们能自己进行界面设计 - 视窗操作系统部门的PM是微软PM中最厉害的(至少我们这样看:-) ) 。可是,这是不太正确的方法,因为如果你有很强的PM, 你可用这种方法,要是你的PM的设计能力不强,这样的流程就要出问题。你的项目的成功不应该寄托在几个强有力的PM上,而是要用完善的流程来保证。好的流程应该是,在产品开发的早期,在做设计时,PM就应该和UI设计人员一起来考虑产品设计的合理性

这个问题在微软内部我们自己也有很大的争论。 UI设计人员就常常抱怨,在产品开发的早期,他们常常不被看重,被抛在一边。UI设计的领导人甚至在全公司的培训大会上讲,我们的这个文化有问题,领导对UI设计人员在产品开发早期能起的作用不够重视。可是这个争论已有几年了,结果仍无改变。我想这主要还是跟我们这个行业的产品开发的特性有关系。因为软件开发是很技术性的,常常在早期的技术讨论中,UI设计人员对技术讨论说不出个所以然来(因为他们大多是学艺术设计的),渐渐地各开发团队对UI设计人员的作用就看轻了。在使用界面因素占很大比例的产品团队,像Office 和MSN,这种情况要好一些。

Usability Engineer 所做的事和UI设计人员不同。他们是将UI设计的模型版,找客户来进行实用和使用性能的检验调查和测试,并根据调查结果对UI设计提出进行修改的意见。也就是说,他们的工作是检验UI设计的合理性,有点像测试人员对程序进行检验的功能 。 可以说, Usability Engineer 和UI设计人员的关系像测试人员与开发编程人员的关系。

User Education team 是编写使用说明书的编辑人员。

从大方面的来说,微软的产品组是公司的几大部门之一,其他还有市场/销售部门,服务部门,运作部门,还有研究院什么的。

在产品组里,是按产品分成一个个的商业部门(Business Unit),一个商业部门负责一个主要的产品。其中的项目团队主要是按以下的结构组成:(缩进表示汇报Report关系)

Product Unit Manager - 产品组总经理
---+ Group Program Manager
---+ Program Manager Lead
------+ Program Manager 1
------+ Program Manager 2
------+ Program Manager n
---+ Dev Manager
------+ Dev Lead
------+ Dev 1
------+ Dev 2
------+ Dev n
---+ Test Manager
------+ Test Lead
------+ Test 1
------+ Test 2
------+ Test n
---+ User Education Team Manager
------+ UE 1
------+ UE 2
---+ Architect (整体设计,规划,基本上只有特别大的产品组才有,画那种积木图。顺别提及,Bill Gates 是Chief Software Architect)

除此以外,还有全公司合用的:
+ Usability Engineer
+ Designer (美工)
+ Accessiblity Engineer
......

对于一个Feature,通常每个角色有一个,比如按上例中,可能是

[ Test 1 + Dev 2 + UE 1 + Usability Enigneer ] 组成一个Feature team.

Feature Team 之间没有隶属关系。

:p 对于参加过DEVP203课程的学员:
其实我们在课上讲过的模型,有很多变化的可能性.以上是最基本的微软配置,比如过的部门就很小,20个人就要出一个产品,并不是所有的角色都有.

合理的开发团队组合应该是什么?

允许我抛砖引玉,先谈一下微软的经验:

项目经理团队:(Program Management Team
• 设计项目经理 (Feature Design PM):负责具体的产品设计,写Design Spec。PM 队伍中,80%的PM是做这个。
• 发行项目经理 (Release PM):负责整个项目的流程和进度管理,制定进度表等,协调整个团队的工作。大的PM 队伍中有一人专门做这个。这是整个项目的领头人。大型的项目的成功与否,常常靠得力的发行经理的领导。
• 协助项目经理(Supporting PM):负责其它产品发行需要照顾到的事情,如客户交流、和市场开发人员交流、负责beta program (初版试行)、等等。大的PM 队伍中少不了这样的人。20%的PM是做这个。

开发团队:(Development Team)
• 开发团队领导(Development Manager): 负责管理各个开发小组,并对开发编程的工作做总体的规划。
• 开发组长(Development Lead): 负责管理开发工程师,也参加对开发编程的工作做总体的规划。
• 开发工程师(Develop Engineer, or Developer):负责具体的编程开发。
• 构架师(Architect): 大的产品团队有一两个资深工程师专门做整体系统的设计规划。

测试团队:(Quality Assurance or Test Team)
• 测试团队领导(QA Manager): 负责管理测试小组
• 测试组长 (Test Lead): 负责管理测试工程师, 制定测试计划等
• 测试工程师(Tester or Test Engineer):负责具体的测试工作
• 测试开发工程师(Developer in Test, or STED): 负责测试工具的开发

产品可用性团队:(Usability Team)
• 产品可用性工程师 (Usability Engineer): 做使用性能的调查和测试,采访客户或将客户邀请来做调查
• 界面设计师(UI Designer): 负责具体的界面设计
• 产品设计师 (Product Designer): 负责产品的总体设计, 特别是硬件产品。
以上这个团队并不是所有的产品队伍都有。比较小的队伍就没有这些专人,有的时候向别的队伍借用,或雇佣临时工。

客户教育或文档团队:(User Education, or UE Team)
• 文档组长 (UE Lead):负责管理文档小组
• 文档编辑 (UE Editor):负责具体的文档编辑和撰写

以上只是一个大约的组合模式。不同的团队有各自的侧重点和变化。在很大程度上这些也受到具体的产品的影响。我想我在微软的产品部门的其他同事们会再做补充。 希望这些信息能对国内的软件开发公司能有参考价值。我们希望通过这样的交流,我们能为中国软件开发事业的进一步发展尽我们的一点微薄之力。

Monday, July 7, 2008

PHP - Stop including class files and use __autoload() instead

PHP added several magic methods in PHP5. __autoload(), however, isn’t one of them. But that doesn’t make it any less useful. In fact it’s one of the gems in PHP that I find to be relatively under used. It’s common for PHP applications to break out classes into their own files. This becomes cumbersome when working on large projects as you wind up with numerous include/require calls for any given page. There’s got to be a better way...

Consistency is your friend
I’m sure you name your class files consistently so you can probably skip this section. Apparently, since you’re reading this, you do not have any rhyme or reason for your class file names. It doesn’t really matter what it is as long as it’s consistent and predictable. For example, EpiCode contains a models directory which contains all of the PHP class files. The file names follow the pattern ClassName.php. I know that class A is defined in models/A.php.

What can __autoload() do for you?
Did you know that PHP will call __autoload() if you try to call a function which is not yet defined? You simply have to define it and let it know where to find the class file. Let’s use my example of placing all class definitions inside a models directory with the filename being the same as the class name. Your __autoload() function may look something like this.


function __autoload($className)
{
require_once "./models/{$className}.php";
}

// Instantiate class A without including it and __autoload() will do so on your behalf
$ClassA = new A();


Make your code less ugly
If you can’t spare an extra function call here or there then __autoload() may not be for you. Though I would begin to question your reasoning. The upside is that your code could become significantly cleaner and more maintainable. The upside of easy to read code often trumps everything else.

Wednesday, July 2, 2008

在Linux上安装JDK,Tomcat,Eclipse,Myeclipse,Subclipse

一、软件下载
  JDK 1.5(Linux RPM in self-extracting file 或 Linux self-extracting file)
www.sun.com
Tomcat 5.5(Core:tar.gz)
    http://tomcat.apache.org/download-55.cgi#5.5.25
Eclipse 3.2.1(eclipse-SDK-3.2.1-linux-gtk.tar.gz)
http://archive.eclipse.org/eclipse/downloads/drops/R-3.2.1-200609210945/index.php

二、安装JDK
  1、将下载的JDK解压到JDK安装目录,例:
     cd /usr/java/
     tar xIvf jdk-1.2.2-RC4-linux-i386-glibc-2.1.2.tar.bz
2、安装JDK
给所有用户添加bin文件的可执行的权限
#chmod +x jdk-1_5_0_02-linux-i586.rpm.bin
执行以下命令,生成文件 jdk-1_5_0_02-linux-i586.rpm
#./jdk-1_5_0_02-linux-i586.rpm.bin
执行以下命令,给所有用户添加rpm文件的可执行的权限
#chmod +x jdk-1_5_0_02-linux-i586.rpm
执行以下命令,安装程序
#rpm -ivh jdk-1_5_0_02-linux-i586.rpm
出现安装协议等,按接受即可。
  2、设置好JAVA_HOME环境变量,它的值为JDK安装目录,如编辑/etc/profile,增加下面几行:
     JAVA_HOME=/usr/java/jdk1.5_*
     export JAVA_HOME
  3、将JDK的bin目录追加到PATH环境变量中,如编辑/etc/profile,增加下面几行:
     PATH=/usr/local/jdk1.5_*/bin:$PATH
     export PATH
4、设置环境变量的另一种方法(要使JDK在所有的用户中使用)
在/etc/profile.d下增加java.sh文件,内容如下:
#set java environment
JAVA_HOME=/usr/java/jdk1.5.0_13
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
然后给所有用户添加可执行的权限,指令如下:
chmod 755 /etc/profile.d/java.sh
5 、检查JDK是否安装成功
#java -version如果看到JVM版本信息和安装版本对应,代表安装成功!
三、安装Tomcat
  1、将下载的Tomcat解压到Tomcat安装目录,例:
     cd /usr/java
     tar xzvf /software/tomcat/jakarta-tomcat.tar.gz
  2、设置好TOMCAT_HOME环境变量,它的值为Tomcat安装目录,如编辑/etc/profile,增加下面几行:
     TOMCAT_HOME=/usr/local/jakarta-tomcat
     export TOMCAT_HOME
  3、Tomcat安装目录的bin子目录下的startup.sh用于启动服务,shutdown.sh为停止服务,服务的缺省端口为8080
  4、退出并重新登陆,启动服务,然后在浏览器上输入http://localhost:8080/来检查是否已经安装成功,例:
     cd $TOMCAT_HOME/bin
     ./startup.sh
     lynx http://localhost:8080/
5、设置环境变量的另一种方法(要使Tomcat在所有的用户中使用)
在/etc/profile.d下增加tomcat.sh文件,内容如下:
#set tomcat environment
TOMCAT_HOME=/usr/jakarta-tomcat
      export TOMCAT_HOME
然后给所有用户添加可执行的权限,指令如下:
chmod 755 /etc/profile.d/tomcat.sh
6、 测试环境变量
#echo $JAVA_HOME
...................

四、安装Eclipse
1、直接双击解压缩,就可以正常使用.

五、安装Myeclipse
1、shell下执行EnterpriseWorkbenchInstaller_*.*GA_E3.2.bin文件:
# ./EnterpriseWorkbenchInstaller_*.*GA_E3.2.bin
2 、出现Myeclipse安装画面,会先让你选择eclipse的安装目录,我这里就是/usr/java/eclipse,然后再选择安装目录, 输入/usr/java/myeclipse,然后next就可以了.

六、安装Subclipse

安装Subclipse之前,linux必须先安装javahl 库,否则 Subclipse不可用。

1、打开linux的添加或删除软件,选择搜索选项,输入javahl进行搜索。

2、选择搜索到的库,点击应用进行安装。

3、打开Eclipse,选择Help->update softwares->Find and Install...,弹出窗口.

4、在弹出窗口建立一个Subclipse站点,url 为 http://subclipse.tigris.org/update, 进行安装.

七、在linux之间传输文件

常用工具:sanba,ssh,wget,ftp等等. 现假设Eclipse下载到linux的/software目录下,需要把Eclipse传输到IP为192.168.0.3的机器上的home目录下, 步骤如下:

1、用SSH登陆

ssh -l root 192.168.0.3

2、打开本地linux终端,传输Eclipse文件

scp /software/Eclipse root@192.168.0.3:/home

3、从远程机器下载到本地

scp root@192.168.0.3:/home/Eclipse /software/Eclipse

4、SFTP传输命令

sftp root@192.168.0.3:/home/Eclipse /software/Eclipse

jdk5.0 tomcat5.0配置全攻略

最近刚转到java学习,没想到环境配置整整搞了四天,汗!相信有不少像我这样的java初学者对环境的配置有所疑问,在网上找到的东西根本不完整,今天希望用这篇文章能够帮助java初学者走好第一步!

1.首先JDK(Java Development Kit)不用说了吧,既然你要学习java相信你已经知道它是干什么的了,在sun公司的网站就可以免费获得!

下载好JDK后,我们一步步的将他安装到我们的本地系统,比如安装到:C:\Program Files\Java目录下,然后就是配置环境变量了,我这里只介绍Windows平台上的配置!步骤如下:

我的电脑---属性---高级---环境变量---[系统变量]---编辑->变量名[JAVA_HOME]---变量值[C:\Program Files\Java\jdk1.5.0_12]---确定;

编辑->变量名[CLASSPATH]---变量值[.;%JAVA_HOME%\lib\dt.jar,%JAVA_HOME%\lib\tools.jar]((前面的.号千万不要忘记,它代表当前目录))---确定;

找到系统变量中原有的[path]变量--编辑---在原有的值后加上---;%JAVA_HOME%\bin---确定;

好了JDK环境的配置已经大功告成了,接下来你就应该重新启动你的Computer了,因为系统变量在重启后才会生效。

现在该测试一下你的环境了!

用编辑工具在c:\下建立一个java程序:HelloWorld.java

public class HelloWorld

{ public static void main(String[ ] args)

{

System.out.println("HelloWorld!");

}

}

切记,程序名一定要与公有类的名字相同!保存文件后,--[开始]--运行---cmd---cd c:\(指向你保存文件的目录下)

java HelloWorld.java [回车]

javac HelloWorld [回车]

相信你已经看到输出为:HelloWorld!了,到此JDK环境我们已经配置起来了!

2.tomcat服务器的配置

tomcat也是一款免费软件,你可以到Apache网站上免费获取!

下载好tomcat后,安装,比如你安装的目录是D:\tomcat5.0 那么你还需要配置一下环境变量:电脑---属性---高级---环境变量---[系统变量]---编辑->变量名[CATALINA_BASE]--变量值[D:\tomcat5.0]确定;

电脑---属性---高级---环境变量---[系统变量]---编辑->变量名[CATALINA_HOME]---变量值[D:\tomcat5.0]---确定;

ok,tomcat的环境变量也好了(好象最新的tomcat版本不需要配置这个也可以)

打开浏览器----输入:http://localhost:8080/如果出现tomcat的欢迎页面,那么你的tomcat就已经安装成功了!

接下来,你还想做什么呢?我想你一定得知道它怎么去运行JSP\Servlet\JavaBean吧!

(1)jsp

在你的tomcat安装目录下,你可以找到D:\Tomcat 5.0\webapps\ROOT目录,那么这个目录就是系统默认的跟目录了,你先编写一个简单的JSP页面,放到这个目录下。jsp-one.jsp如下:

<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>




JSP注释


<% //利用For循环控制字体由大到小
for(int i=1;i<6;i++)><%=i%>>你好JSP<%=i%>>
<%} //利用for循环控制字体由小到大 for(int i=5;i>0;i--)
{
%><%=i%>>你好JSP<%=i%>>
<%} %>


保存后在浏览器中输入:http://localhost:8080/jsp-one.jsp你会看到什么呢?

如果你可以看到由大到小和由小到大的字体,那么你的jsp环境也就没问题了!

如果不是,请检查你的程序是不是在编码上有错误,比如你拷贝了上面的程序直接在[记事本]中保存,很有可能多出一些码!

XAMPP for Windows 简易教程

下载:
XAMPP Windows 1.5.4a
XAMPP Lite 1.5.4a (精简版)

有三种选择可供您下载 XAMPP 的 Windows 版:
安装包
简单且安全:XAMPP 的便捷安装程序。
ZIP 压缩包
给喜欢绿色软件的人:XAMPP 的普通 ZIP 压缩档案。
自解压 ZIP 包
便捷而高效:XAMPP 的超小自解压 7-ZIP 压缩档案。

安装:
方法 A:使用安装包进行安装
使用安装包来安装 XAMPP 是最简单的方法。

XAMPP win32 的安装向导

安装过程结束后,您会在 开始/程序/XAMPP 菜单下找到 XAMPP。您可以使用 XAMPP 控制面板来启动/停止所有服务或安装/卸载所有服务。

XAMPP 控制面板能启动/停止 Apache、MySQL、FilaZilla 和 Mercury,或直接将其安装为服务

方法 B:不使用安装包进行安装
如果不用安装包,则可下载 7-ZIP 压缩包或 ZIP 压缩包,并将其解压至您选择的文件夹中。


本图中,我们将 XAMPP 解压到“D:\program files”路径下的“D:\program files\xampp”文件夹中。之后,打开 XAMPP 所在的文件夹,并运行其中的“setup-xampp.bat”。


这样能使配置文件中的路径信息得到更新。


最后,通过那些批处理文件或图形界面的“xampp-control.exe”启用不同的服务即可。

注意:如果您使用的是 XAMPP 的安装包,您不需要运行“setup_xampp.bat”。

操作:
操作 1:启动/停止/测试 XAMPP
www.nat32.com 制作的 XAMPP 控制面板不包含在 Lite 版(精简版)中。

.\xampp\xampp-control.exe

其它的服务启动/停止脚本
启动 Apache 和 MySQL:.\xampp\xampp_start.exe
停止 Apache 和 MySQL:.\xampp\xampp_stop.exe
启动 Apache:.\xampp\apache_start.bat
停止 Apache:.\xampp\apache_stop.bat
启动 MySQL:.\xampp\mysql_start.bat
停止 MySQL:.\xampp\mysql_stop.bat
启动 Mercury 邮件服务器:.\xampp\mercury_start.bat
(Mercury 邮件服务器只能通过 XAMPP 控制面板的图形界面停止)
设置 FileZilla FTP 服务器:.\xampp\filezilla_setup.bat
启动 FileZilla FTP 服务器:.\xampp\filezilla_start.bat
停止 FileZilla FTP 服务器:.\xampp\filezilla_stop.bat

测试:Apache 服务启动后,在浏览器中输入地址
http://localhosthttp://127.0.0.1,并检测所有的 XAMPP 样例和工具。

操作 2:将特定的服务器配置为系统服务
您可以在 NT4、2000 和 XP 平台中将特定的服务器配置为系统服务。请使用以下脚本:

安装 Apache 服务器为系统服务:.\xampp\apache\apache_installservice.bat
卸载 Apache 服务器的系统服务:.\xampp\apache\apache_uninstallservice.bat
安装 MySQL 服务器为系统服务:.\xampp\mysql\mysql_installservice.bat
卸载 MySQL 服务器的系统服务:.\xampp\mysql\mysql_uninstallservice.bat
安装及卸载 FileZilla FTP 服务器为系统服务:.\xampp\filezilla_setup.bat
Mercury 邮件服务器:目前还不能配置为系统服务!

操作 3:安装插件
除了主程序包外,还有许多相关的插件可用于开发环境。目前,本站发布的官方 win32 插件如下:

1. 包含 Mod_Perl 和精选的重要 Perl 模块的 Perl 插件
2. Tomcat 插件(系统需求:系统中必须已经安装 SUN J2SE SDK)
3. Tomcat 插件的 Cocoon 模块(系统需求:系统中必须已经安装 Tomcat)
4. Python 插件

推荐的安装方法如下:
XAMPP 安装包需要安装包格式的插件,7-Zip 压缩包需要 7-Zip 压缩包格式的插件。ZIP 压缩包格式的插件请直接解压缩至 XAMPP 的主文件夹中。然后运行“setup_xampp.bat”批处理文件即可。安装包格式的插件能自动配置所有的东西,您不需要手动配置。

操作 4:升级 XAMPP
当 XAMPP 程序集里的单独组件被升级时,我们会将 XAMPP 同步升级。然而,其中一些组件的变化与我们最新发布的版本不兼容,所以我们就不会升级这类组件。我们通常能升级 XAMPP 中所有的服务器和程序。但我们不升级配置文件,因为您可能已经修改过他们了。提示:如果您用的是安装包版的 XAMPP,那么您在使用升级安装包的时候将非常轻松。其他用户请下载自解压 7-ZIP 压缩包。直接将其中的文件释放到 XAMPP 文件夹中,并覆盖原有的文件即可。

安全问题(必读!
XAMPP 安全控制台
正如前面提到,XAMPP 并不是为生产环境准备的,它只为开发者服务。为了方便开发者,XAMPP 被默认配置为所有功能全部开启。对于开发环境来说,这是非常好的,但对于生产环境,这可能是灾难性的。

下面是 XAMPP 默认配置的安全问题列表:
1. MySQL 管理员(root)未设置密码。
2. MySQL 服务器可以通过网络访问。
3. PhpMyAdmin 可以通过网络访问。
4. 样例可以通过网络访问。
5. Mercury 邮件服务器和 FileZilla FTP 服务器的用户是公开的。

所以大家应该在发布一些在线的东西前保证 XAMPP 的安全性。有时候,一个防火墙或一个外部路由器就足够安全了。首先,您可以试试基于网络的“XAMPP 安全控制台”。

修正绝大多数的安全薄弱环节,只需访问以下地址(只能在本地计算机上访问):

1.4.15 版之前的版本:
http://127.0.0.1/xampp/xamppsecurity.php

1.4.15 版及以后版本:
http://127.0.0.1/security

MySQL、PhpMyAdmin 的管理员密码和 XAMPP 的目录保护可以在这里设置。对于 Mercury 邮件服务器和 FileZilla FTP 服务器,请记得更改配置设置(比如用户名和密码)。如果您不需要这些服务,那就不要启动它们——这样也是安全的。

卸载
移除方法 A:安装包
使用安装包(NSI)安装的 XAMPP,请使用自带的卸载工具进行卸载!自带的卸载工具会将注册表中的相关内容和一些服务一并卸载。自带的卸载工具如下图所示。


移除方法 B:zip 和 7-zip 压缩包
卸载方法根据您使用的 XAMPP 安装版本有所不同:
1. ZIP 压缩包
2. 自解压 7-ZIP 压缩包
3. XAMPP lite(精简版)

卸载时只需删除整个 XAMPP 文件夹即可。不涉及注册表项,不涉及环境变量……简单而又干净!但在此之前不要忘记关闭所有 XAMPP 组件的服务器,退出所有的面板。也许您已经安装了一些 XAMPP 的组件作为系统服务,那么您必须先卸载这些服务!

常见问题
问题 1:什么是 XAMPP Lite(精简版)?
XAMPP Lite(精简版)类似 XAMPP 推荐的 PHP 与 MySQL 快速使用包。与完整版相比,它少了一些工具,比如 Mercury 邮件服务器或 FileZila FTP 服务器。注意:精简版没有相关的安装包、插件或升级包。

问题 2:我的网络文档应该放在哪里?
所有网络文档都放在 htdocs 主文件夹中(.\xampp\htdocs)。如果您将 test.html 文件放在这里,您可以通过
http://localhost/test.html 来访问它。php 或 cgi 文件也同样放在这里。其他的 WWW 子文件夹可以在 htdocs 目录下创建。例如将 test.html 放在 .\xampp\htdocs\new 路径下,您就可以在浏览器的地址栏中输入http://localhost/new/test.html 来访问这个文件。

更多的文件特性概述:
CGI) 可执行:全部;允许的结尾:.cgi => 主程序包
PHP) 可执行:全部;允许的结尾:.php .php4 .php3 .phtml => 主程序包
MOD Perl) 可执行:.\xampp\htdocs\modperl;允许的结尾:.pl => Perl 插件
ASP Perl) 可执行:.\xampp\htdocs\modperlasp;允许的结尾:.asp => Perl 插件
JSP Java) 可执行:.\xampp\tomcat\webapps\java(和其他);允许的结尾:.jsp => Tomcat 插件
Servlets Java) 可执行:.\xampp\tomcat\webapps\java(和其他);允许的结尾:.html(和其他)=> Tomcat 插件
MOD Python) 可执行:.\xampp\htdocs\python;允许的结尾:.py => Python 插件
Spyce Python) 可执行:.\xampp\htdocs\python;允许的结尾:.spy => Python 插件

问题 3:我能移动 XAMPP 吗?
可以,但只限于 ZIP/7-ZIP 压缩包版的 XAMPP。移动操作之后,您必须运行“setup-xampp”使配置文件得到更新。请不要用这种方法尝试安装版的 XAMPP。如果您在使用安装版的 XAMPP,您可以将其复制(而不是移动)一份,并放到新的路径下,然后运行“setup-xampp”使配置文件得到更新。试试吧!

问题 4:我如何配置默认的开始页面?
如果您在浏览器中访问类似
http://localhost/xampp/ 的文件夹,Apache 服务器会自动返回一个默认的开始页面。Apache 会自动寻找已存在的类似 index.php 的索引页。httpd.conf 中的“DirectoryIndex”指令负责这个功能。在这里您可以定义默认开始页面的名字和协议。XAMPP 在默认状态下,“DirectoryIndex”指令的列表如下:

index.php index.php4 index.php3 index.cgi index.pl index.html index.htm index.html.var index.phtml

问题 5:我如何在 PHP5 和 PHP4 之间相互切换?
XAMPP(非精简版!)包含 PHP5 和 PHP4。请使用“php-switch.bat”($path-to-xampp\xampp\php-switch.bat)来切换版本。注意:在切换版本前请先停止 Apache 服务器。

问题 6:我在哪里能更改配置文件?
您可以通过文本编辑器来更改 XAMPP 的各种配置文件。这些文件存在于以下路径:
Apache 基本配置:.\xampp\apache\conf\httpd.conf
Apache SSL:.\xampp\apache\conf\ssl.conf
Apache Perl(仅限插件):.\xampp\apache\conf\perl.conf
Apache Tomcat(仅限插件):.\xampp\apache\conf\java.conf
Apache Python(仅限插件):.\xampp\apache\conf\python.conf
PHP:.\xampp\apache\conf\php.ini(Apache 正在运行的 PHP 版本)
MySQL:.\xampp\mysql\bin\my.cnf
phpMyAdmin:.\xampp\phpMyAdmin\config.inc.php
FileZilla FTP 服务器:.\xampp\FileZillaFTP\FileZilla Server.xml
Mercury 邮件服务器基本配置:.\xampp\MercuryMail\MERCURY.INI
Sendmail:.\xampp\sendmail\sendmail.ini

问题 7:这些文件夹里都是些什么东西?
路径 内容
\xampp\anonymous 匿名 FTP 的样例文件夹
\xampp\apache Apache 服务器
\xampp\cgi-bin 可执行的 CGI 脚本
\xampp\FileZillaFTP FileZilla FTP 服务器
\xampp\htdocs http 文档的主文件夹
\xampp\install 用于 XAMPP 的安装(请勿删除!)
\xampp\licenses 同上
\xampp\MercuryMail Mercury 邮件 SMTP POP3 IMAP 服务器
\xampp\mysql MySQL 服务器
\xampp\perl Perl
\xampp\php PHP(4 和 5)
\xampp\phpmyadmin phpMyAdmin
\xampp\security 额外的安全配置
\xampp\tmp 临时文件夹
\xampp\webalizer Webalizer 网络状态
\xampp\webdav WebDAV 样例

Windows下Tomcat的安装

1. 下载Tomcat for windows的安装程序,http://tomcat.apache.org/ , 我选择下载的Windows Executable和tar.gz 文件
2. 直接运行Windows Executable 包中解压出来的exe文件,可以选择full安装或者custom安装
3. 安装完成之后,会发现在任务栏多出一个类似Apache的图标,接下来还要进行一些配置才能使Tomcat 工作
4. 再次打开系统变量对话框,点击我的电脑->属性->高级->环境变量,在系统变量中查找Path变量,并在末尾添加Tomcat的安装路径,我这里是E:\phpserver\Tomcat 5.0。另外在添加两个变量:
TOMCAT_HOME=” E:\phpserver\Tomcat 5.0”
JAVA_HOME=”C:\Program Files\JAVA\jdk1.5”
5. 配置完环境变量以后要重新启动,配置才能生效
6. 重启之后,先启动Tomcat服务,可以直接点任务栏的图标,启动服务;也可以通过命令行E:\phpserver\tomcat 5.0\bin\startup来启动。
7. 打开ie,输入http://localhost:8080/index.jsp,如果页面显示出Tomcat的标志和一些说明文字,表示配置成功了