Xampp版本选择及BitNami

版本选择:
Vista, 7, 8, 2008 & 2012下XAMPP Windows 1.8.3版本
xp以及2003则要下载XAMPP Windows 1.8.2版本,原因是安装1.8.3版本时会报错,提示php5.5版本不支持xp和2003

目前最新版本:

New XAMPP 1.8.2-5 and 1.8.3-4 versions

以下引自:http://www.oschina.net/news/39016/xampp-join-bitnami

BitNami 提供了一个免费的 Web 应用库,可在任何地方安装,他们是一个大的开源支持者,有很多关于 Apache 和各种软件的打包经验,下面是来自 BitNami 联合创始人 Daniel Lopez 的一段话:

亲爱的 XAMPP 用户:

虽然身在 BitNami,但我们非常崇拜 XAMPP 以及其所作的所有贡献:让程序员更轻松、快速的部署应用,不管是在笔记本上还是在云端。因此当 Kay 和 Kai 在数月前建议是否有可能将 XAMPP 合并进来并继续维护的时候,我们欣然同意。在接下来的日子中我们将继续对 XAMPP 项目进行维护和改进,我们计划:

– 改进已有的安装程序
– 改进绑定的控制面板
– 让在 XAMPP 之上安装和开发 Drupal、Joomla、WordPress 等更加容易
– 改进 64位支持、改进 PostgreSQL 支持等
– 改进 Linux 和 OS X 支持
– 改进网站外观

第一步,我们将制作 BitNami for XAMPP,这是一个一键安装包,可让你安装 Drupal、Joomla 和 WordPress 在已有的 XAMPP 之上。

http://bitnami.org/xampp

作为 XAMPP 的后来人,我们期望 XAMPP 社区能帮助我们实现这个过渡阶段,给我们反馈和好的主意,关于如何改进 XAMPP。请使用 XAMPP 论坛或者给我发邮件都可以 daniel@bitnami.org ,期待你的任何建议和评论。

Daniel Lopez, BitNami 联合创始人

Xampp 配置出现403无法访问

问题:xampp版本为:1.8.2,XAMPP Control Panel v3.2.1安装完成后,添加虚拟主机(注1)后,访问时403错误。

Access forbidden!
You don’t have permission to access the requested object. It is either read-protected or not readable by the server.
If you think this is a server error, please contact the webmaster.
Error 403

解决方法:
打开D:\xampp\apache\conf\httpd.conf文件,大概220行位置,找到:

    AllowOverride none
    Require all denied

改成:

    #AllowOverride none
    #Require all denied
    AllowOverride All
    #Require all granted

这个时候访问配置的域名,发现可以访问了。但是出现了一个新问题,访问localhost不行了,需要在vhosts.conf把localhost也配置成虚拟主机。代码如下:


    DocumentRoot "D:/xampp/htdocs"
    ServerName localhost
    
        Order deny,allow
        Deny from all
        Allow from 127.0.0.1
        Allow from localhost
    

这个时间访问,测试正常了。

注1:安装xampp后,配置虚拟主机的方法,找到 \xampp\apache\conf\extra 的httpd-vhosts.conf 文件,去除##NameVirtualHost *:80 前面的##,参照示例进行配置。

参考:http://www.cnblogs.com/aqxinzhuan/p/3269863.html

xampp本地域名测试使用说明

1、安装xampp,网址:http://www.apachefriends.org/zh_cn/xampp.html

2、安装完成后假定安装目录为:D:\xampp 打开D:\xampp\apache\conf 找到httpd.conf 进行修改。

3、在底部增加内容为:


    Header set P3P 'CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"'
    ServerAdmin root@k68.com
    DocumentRoot D:/html/protect
    ServerName protect.html.com
       
        Order Allow,Deny
        Allow from all
        DirectoryIndex index.htm index.html index.shtml index.php index.jsp
        AddHandler server-parsed .shtml
        AddType text/html .shtml
        AddHandler server-parsed .inc
        AddType text/html .inc
        Options Indexes FollowSymLinks Includes
        Order allow,deny
        Allow from all
      

4、在D盘建立目录D:/html/protect把页面复制到目录下。

5、修改host文件,127.0.0.1 protect.html.com

6、重启apache,在浏览器输入protect.html.com 进行测试。

Xampp中Apache服务器不能启动问题解决(80端口未被占用)

比较悲催的事情,电脑网卡由于使用软件优化导致不稳定,过段时间自动灭掉,只有重启后,才能上一段网,没有找到原因,只能无耐重装系统了。
重装系统后建立本地工作环境,安装Xampp时,选了一个最新版的。结果还是困难重重,遇到apache不能启动这个怪事,换端口至8080,问题依旧,遂开始查找新的解决方法。

用Xampp control panel上自带的netstat工具查了下,也没发现端口被占用的情况。启动不了时出现的情况如下:

Status change detected: running
Status change detected: stopped

启动起来很快就关闭了。

在网上查了半天终于在apache friends的forum上查到了,原来是1.8版本的xampp中的apache启动需要Microsoft C++ 2008 32 bit runtime libraries就是C++ 2008的重新发布包,到microsoft网站上http://www.microsoft.com/en-us/download … px?id=5582下载安装,apache重装启动完成。

电脑还原到的是08年是刚买电脑时重装的gho镜像。难怪有这个问题,还好从百度的缓存中,寻找到解决方法。感谢互联网。

查看被占用端口程序,解决端口占用问题

电脑上安装了一个xampp,本地php环境,重启电脑后常会遇到端口被占用这种情况,有些时候关闭几个程序就可以了,但有些时候就比较纠结了,不知道是那个东东给占用了,不愿意改端口,测试网站还是80端口好,因为公司有些东西默认有80端口限制。

看了一些文档,分两步解决问题。

1、使用DOS命令查看端口占用情况。

开始→运行→cmd 进入命令提示符,输入netstat -ano 即可看到所有连接的PID。

2、任务管理器中找到对应项,关闭程序。

在“任务管理器”热键Ctrl+Alt+Delete,中找到这个PID所对应的程序,如果任务管理器中没有PID这一项,可以在任务管理器中选“查看”→“选择列”。

其他:

在Dos命令下查看指定端口号占用

netstat -ano | findstr 80  80为端口号

在Dos命令根据pid查看是那个程序?

tasklist|findstr “5500”    5500为pid值

注:

Netstat的定义是: Netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。

Tasklist是用来显示运行在本地或远程计算机上的所有进程,带有多个执行参数。不但可以查看系统进程,而且还可以查看每个进程提供的服务。

用命令方式查看进程(关闭占用端口的进程)

启动xampp后点Apache后面的start没有反应,第一个感觉就是不爽。不知道那个软件把端口给占了,软件装的多没办法啊,又有都有用。也不能开机就先搞个启动吧。只有找找资料来找到是谁给占用了,先让个地儿。与是找到了下文,阅读下文之前,只能知道如何查询端口号,不知道找到了如何解决。有的文章上面讲查到pid号后,去任务管理器,xp的任务管理器里面可是没有标注pid号的。鬼知道是那个程序。还有在下文的帮助下,我找到了真凶,也学到了一些知识。

一、根据进程查端口号

首先在开始菜单的“运行”框中输入“cmd.exe”进入命令提示符窗口,先键入“tasklist”命令将列出系统正在运行的进程列表,把你要查的进程所对应的“PID”号记下或复制。

需要注意的是,相同的进程 图像名 每次运行的“PID”号一般都不会相同,所以一旦该进程重启后,该“PID”号就会改变,这就需要重新查看。

把进程的PID号记下后,接下来就用这个PID号把该进程所开的端口显示出来了。
例如我们要看进程“QQ.exe”(上图中得知该进程ID号为:1332)开启了那些端口,在当前的命令符下继续键入“netstat -ano | findstr 1332”命令,其中“netstat -ano”参数表示以数字形式显示所有活动的TCP连接以及计算机正在侦听的TCP、UDP端口,并且显示对应的进程ID PID 号;“|findstr 1332”表示查找进程PID为“1332”的TCP连接以及TCP、UDP端口的侦听情况(在实际应用中,需要把你刚才记下或复制的PID号替换掉这里的1332)。按“回车”键后,就会显示出该进程所开的端口号。

二、根据端口号查进程

在命令提示符窗口中输入“netstat -ano”命令,列出系统当前的端口列表,该命令的作用已在上面提过了。

-o参数的作用主要是显示各端口对应的进程PID号,现在把你要查的端口对应的进程PID号记下或复制。 然后在命令提示符下继续输入“tasklist /fi ″PID eq 788 ″”(在实际应用中,需要把你复制或记下的PID号替换掉这里的788), 这行语句“/fi”参数表示在“tasklist”中筛选,而“PID eq 788”则是指定筛选的条件,按“回车”键后,就会显示出端口对应的进程。可以看出,PID号为“788”所对应的进程为“svchost.exe”,如果你查的端口没有关联任何进程的话, 此时就会返回“没有运行带有指定标准的任务”的提示信息。

三、查处进程对应程序

在开始-运行输入并执行“cmd”命令,打开“命令提示符”窗口输入并执行Netstat -abnov命令,在反馈的信息中可以看见每个进程的发起程序或文件列表(如果State栏下显示ESTABLISHED的话,那说明它正在进行远程通话),在它们的右侧都有一个PID号

四、杀掉某进程

假如想关闭某个进程,可把该进程的PID号记下,在命令提符下输入“taskkill /pid 2400” 2400是PID号) 就可以将PID号为2400的进程关闭,如果要强制关闭该进程,只须在这条命令的后面加个“/f”参数即可。

或者用ntsd -c q -p pid (实际应用中,pid要换成实际的pid号)

XAMPP多域名绑定(虚拟主机)设置

之前有文章记录过通过设置xampp的不同端口号,实现访问到不同目录。但是端口,没有直接输入域名来的方便。但是域名,也需要更改本地的hosts文件,各有利弊,选择适合的才是最好的。
打开httpd.conf文件,直接拖到最后面,开始粘贴:
#
# Use name-based virtual hosting.
#
NameVirtualHost *:80<VirtualHost *:80>
Header set P3P ‘CP=”CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR”‘
ServerAdmin root@k68.org
DocumentRoot E:/xampp/htdocs/work/k68
ServerName k68.org
<Directory E:/xampp/htdocs/work/k68>
Order Allow,Deny
Allow from all
DirectoryIndex index.htm index.html index.shtml index.php index.jsp
AddHandler server-parsed .shtml
AddType text/html .shtml
AddHandler server-parsed .inc
AddType text/html .inc
Options Indexes FollowSymLinks Includes
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
绑定多个域名,方法同上,复制修改域名和绑定的目录。
最后修改hosts文件,位于c:/windows\system32\drivers\etc下,将域名ip指定为本机,即127.0.0.1。
设置完了之后,你会发现访问 localhost直接指向到设置的 a 那个路径去了,也就是开启了vhosts后,默认的 httpd 的配置就会失效了,默认的访问就指向到 vhosts 里的第一条设置去了。这时候你要把 localhost的目录配置给设置回来。
<VirtualHost *:80>
DocumentRoot /xampp/htdocs/
ServerName localhost
</VirtualHost>
ps:最后这条对我很用。之前不知道怎么设置。