|
本帖最后由 vikesgao 于 2011-3-9 13:35 编辑
1.下载Xampp地址:http://www.apachefriends.org/zh_cn/xampp-windows.html#1721 上述地址已经说明安装方法,在此不解说了;
1.1Xampp中Apache无法启动的端口问题解决
Xampp中Apache无法启动的解决方法简单的就是修改80和443端口。在启动XAMPP时,如果
报80/443端口被占,可以修改此端口
xampp(apache+mysql+php+perl)是一个功能强大的php网站开发集成软件包。应用xampp可以轻松
地在各种系统下搭建php等程序的运行环境。
今天头一次搭建xampp发现一个问题,apache启动不了,不论点击多少次start,都显示如下:
busy…
apache started [port 80]
我的xp系统默认安装了iis(我要用来进行asp开发),显然是因为80端口被占用了,所以这个端口很
busy,从而导致apache无法启动的。
既然如此如何修改apache的端口呢?
到xampp的安装目录下,点击进入apache\conf下,可以看到“httpd.conf”文件,用文本编辑器打开,将
所有的80修改为8081, Listen 80 -〉Listen 8081
ServerName localhost:80-〉ServerName localhost:8081
然后在XAMPP Control Panel中重新启动apache。
怎么还显示如下:
busy…
apache started [port 80]
在ie里输入地址:http://localhost:8081测试,打不开,都修改apache的端口了,试着
停止iis的web服务。再启动apache。还显示如下:
busy…
apache started [port 80]
ie里输入地址:http://localhost:8081测试,成功打开xampp的网页,提示:
欢迎使用XAMPP for Windows Version 1.6.8 !
祝贺您:
您已经成功安装了XAMPP!
虽然在xampp-control的对话框中还是显示apache启动了80端口,但实际的占用端口是8081。再重新启
动iis服务,apache和iis都可以在各自的8081和80端口工作了。
重新启动电脑,apache又不能用了,试着 关闭iis服务,启动apache -〉http://localhost:8081测试成
功;接着启动iis服务,http://localhost:8081测试成功
真的是个好奇怪的调试过程,不管怎么说,是可以用了,
直接xampp\apache_start.bat启动apache,出现提示443端口占用,原来IIS占用了ssl端口(即443端口
https),这就好办了,修改xampp\xampp\apache\conf\extra\httpd-ssl.conf文件 ,将所有的 443 都修改为
4433 或关闭ssl服务,再次测试一切ok了。
xampp调试过程边做边写,思路随乱......
总结:Xampp中Apache无法启动的解决方法简单的就是修改80和443端口。在启动XAMPP时,如果
报80/443端口被占,可以修改此软件的端口打开xampp\apache\conf\httpd.conf文件把80修改为8081;
打开xampp\apache\conf\extra\httpd-ssl.conf文件把443修改为4433或者关闭SSL扩展(反正是调试而
已);
2.安装Bugfree的问题:
2.1安装失败修改Schema.php请文件中的 TYPE=MyISAM 改为 ENGINE=MyISAM,这是因为MYSQL高版本不再使用TYPE=MyISAM 的原因。
2.2Bugfree界面显示错误信息为:
Warning: Call-time pass-by-reference has been deprecated in E:\New-Hack520org\htdocs\class.php on line 441
Warning: Call-time pass-by-reference has been deprecated in E:\New-Hack520org\htdocs\class.php on line 441
Warning: Call-time pass-by-reference has been deprecated in E:\New-Hack520org\htdocs\class.php on line 892
Warning: Call-time pass-by-reference has been deprecated in E:\New-Hack520org\htdocs\class.php on line 892
Warning: Call-time pass-by-reference has been deprecated in E:\New-Hack520org\htdocs\class.php on line 924
Warning: Call-time pass-by-reference has been deprecated in E:\New-Hack520org\htdocs\class.php on line 924
修改PHP.ini,allow_call_time_pass_reference = On。实际上,我在安装了Apache/2.0.58 (Win32) PHP/4.4.2,
这个选项缺省是打开的。另外,还有一个解决方法是关闭错误报告功能,将php.ini文件里的display_errors = On改成Off。
实际上,将allow_call_time_pass_reference改为on可以视做一个解决的办法,但关闭报告功能估计是一种自己骗自己的方法。
因为这是一个大的错误,不让他显示并不代表就可以解决掉。
我在解决这一问题中发现,一共有几个原因可能导致上述问题:
1.上述值被设置了off。解决方法:修改PHP.ini,allow_call_time_pass_reference = On;
2.上述值被设置了off。解决方法:修改PHP.ini,display_errors = On
3.如果Xampp需要移植:但只限于 ZIP/7-ZIP 压缩包版的 XAMPP。移动操作之后,您必须运行“setup-xampp”使配置文件得到更新。请不要用这种方法尝试安装版的 XAMPP。如果您在使用安装版的 XAMPP,您可以将其复制(而不是移动)一份,并放到新的路径下,然后运行“setup-xampp”使配置文件得到更新。试试吧!
4.通过文本编辑器来更改 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\php\php.ini
- MySQL:.\xampp\mysql\bin\my.ini
- phpMyAdmin:.\xampp\phpMyAdmin\config.inc.php
- FileZilla FTP 服务器:.\xampp\FileZillaFTP\FileZilla Server.xml
- Mercury 邮件服务器基本配置:.\xampp\MercuryMail\MERCURY.INI
- Sendmail:.\xampp\sendmail\sendmail.ini
5.文件夹存放信息的内容
| 内容 | \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 样例 |
|
|