原作者:http://www.cnblogs.com/martin1009/archive/2011/11/11/2245794.html
1. 从www.apachefriends.org 上下载XAMPP for Windows的最新版本,我下的是XAMPP Windows 1.7.1 Installer.
2.双击安装,直接装在默认目录c:xampp 下.
3.安装过程中,XAMPP Option:将SERVICE SELECTION下面的InstallApache as service 和Install MySQL as service 选上。
4.一直Next,直到Finish,如果80端口,3306端口以及25端口没有禁用的话,最好关闭防火墙。
5.MySQL权限:XAMPP默认装的MySQL管理员是root ,密码为空 ,首先要给管理员设一个密码:
开始--运行--cmd--cd c:xamppmysqlin mysqladmin -u root password 123(给root设置密码为123,你也可是设成你想要的) 在c:xamppphpMyAdmin文件夹中打开config.inc.php ,找到$cfg['Server'][$i]['password']=' '; 将其改成:$cfg['Server'][$i]['password']='123';创建用户和特权:为了提高程序的安全性,应用总是为访问数据库创建新用户,而不是始终使用根用户。GRANT privileges ON database.* TO usrname IDENTIFIED BY 'password‘
privileges 是指用户在特地的数据库上有哪些特权(select,insert,update,delete,index……),一般可以用ALL来表示所有的特权。database.* 表示用户可以处理哪些数据库和表,database.tablename 制定特定的表,或者利用*.*来允许每个数据库。username 可以把用户限定到特定的主机名上,主机名可以是运行MYSQL的计算机,如localhost,或者是远程计算机上运行MYSQL的IP地址(如usrname@localhost或username@远程计算机IP地址)。
比如我在本机上创建一个emi的用户,我可以在Mysql命令行中写:
GRANT ALL ON *.* TO emi@localhost IDNTIFIED BY '123';
然后开始--运行--cmd--cd c:xamppmysqlin,输入mysql -u root -p ,然后输入密码,就可以进入到mysql欢迎界面了。
6.修改MYSQL默认字符集
进入Mysql命令行后,mysql>status ,然后会显示MYSQL默认字符集为latin1:
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
要改成utf8:
mysql> SET character_set_client = utf8 ;
mysql> SET character_set_connection = utf8 ;
mysql> SET character_set_database = utf8 ;
mysql> SET character_set_results = utf8 ;
mysql> SET character_set_server = utf8 ;
mysql> SET collation_connection = utf8 ;
mysql> SET collation_database = utf8 ;
mysql> SET collation_server = utf8 ;
这样修改后,MySQL服务重启好像又恢复到以前了,建议还是修改My.ini文件。
查看默认字符集(默认情况下,mysql的字符集是latin1(ISO_8859_1)
通常,查看系统的字符集和排序方式的设定可以通过下面的两条命令:
mysql> SHOW VARIABLES LIKE 'character%';
+--------------------------+---------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | D:"mysql-5.0.37"share"charsets" |
+--------------------------+---------------------------------+
mysql> SHOW VARIABLES LIKE 'collation_%';
+----------------------+-----------------+
| Variable_name | Value |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database | utf8_general_ci |
| collation_server | utf8_general_ci |
+----------------------+-----------------+
修改默认字符集
最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值,
如 default-character-set = utf8
character_set_server = utf8
修改完后,重启mysql的服务,service mysql restart
使用 mysql> SHOW VARIABLES LIKE 'character%';查看,发现数据库编码均已改成utf8
+--------------------------+---------------------------------+
| Variable_name | Value |
+--------------------------+---------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | D:"mysql-5.0.37"share"charsets" |
+--------------------------+---------------------------------+
xampp(apache+mysql+php+perl)是一个功能强大的php网站开发集成软件包。应用xampp可以轻松地在各种系统下搭建php等程序的运行环境。
今天头一次搭建xampp发现一个问题,apache启动不了,不论点击多少次start,都显示如下:
busy…
apache started
我的windows 7系统默认安装了iis(我要用来进行asp开发),显然是因为80端口被占用了,所以这个端口很busy,从而导致apache无法启动的。解决方法我 google了一下,说了很多很多种...。why?xampp通常就是用来php开发迅速搭建php+mySQL+apache环境的,实际服务器环境 应用至少我是会一一搭建的。既然是开发环境你就好办了,我的asp用的iis服务器是windows的默认web80端口,jsp用的tomcat服务器 用的是tomcat安装时的默认端口8080,那么php下xampp里边的apache我就将它的默认80端口修改为8081(随便其它的只要不被占用 就可以了)其它的不就ok了 (说道这里想起来谁不是有看的人还不理解什么是web默认端口,不懂的话就看看tcp/ip,你的基础知识不懂得的就是沙地建楼,永远不会高的了)。
既然如此如何修改apache的端口呢?
到xampp的安装目录下,点击进入apacheconf下,可以看到“httpd.conf”文件,用文本编辑器打开,将所有的80修改为8081, Listen 80 -〉Listen 8081
ServerName localhost:80-〉ServerName localhost:8081
然后在XAMPP Control Panel中重新启动apache。
怎么还显示如下:
busy…
apache started
管它三七二十一,在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/测试成功
真的是个好奇怪的调试过程,不管怎么说,是可以用了,
直接xamppapache_start.bat启动apache,出现提示443端口占用,原来IIS占用了ssl端口(即443端口 https),这就好办了,修改xamppxamppapacheconfextrahttpd-ssl.conf文件 ,将所有的 443 都修改为 4433 或关闭ssl服务,再次测试一切ok了。
xampp调试过程边做边写,思路随乱......
总结:Xampp中Apache无法启动的解决方法简单的就是修改80和443端口。在启动XAMPP时,如果报80/443端口被占,可以修改此软件的端口
打开xamppapacheconfhttpd.conf文件把80修改为8081;打开xamppapacheconfextrahttpd-ssl.conf文件把443修改为4433或者关闭SSL扩展(反正是调试而已)。