搭建Windows+Apache+MySQL+PHP服务器环境

来源:互联网 发布:微商和淘宝哪个好做 编辑:程序博客网 时间:2024/04/30 19:45

近日国创要中期报告,赶在之前傻瓜式地搭了一下http服务器,过程如下(仅供参考):

 

目的:实现Android客户端与服务器间的通信,Android客户端用于识别条形码,并上传码值到服务器,通过查询数据库获取商品对应信息,再通过xml格式发回客户端进行解析并显示给用户。

客户端部分再次不做介绍。

 

开始打算在PC端用java socket写个java 服务器,由于网络编程知识的不足,短时间难以实现socket 发送xml的功能(网上说可以通过java序列化、soap之类的东西解决,但是多半是客户端提交给服务器,还请大虾们赐教),后来通过某些途径得知使用http协议可以搞定这一切(措辞可能不太专业),便找来wmap 5集成的安装包,搭了一个简单的服务器(当然可以分别安装,这里是为图简便)。

 

首先,下载wamp 5软件(wamp是Windows+Apache+MySQL+PHP的简称,这里是特定软件)。

然后安装wamp 5,一路默认就行。

下面就是配置了,一下截取至网络:

 

1、设置phpmyadmin

在WampServer安装完成后,通过http://localhost/打开后可以看到WampServer自带的一个简单的页面,里面有phpinfo、phpmyadmin和sqlitemanager三个工具。

打开phpmyadmin会在下方看到提示,root用户没有设置密码,我们先为root帐户设置密码。点击phpmyadmin页面中部的“权限”,可以看到“用户一览”,这时候应该只有一行用户信息,即root localhost这一行,点击这一行最右侧的编辑权限图标,在新页面找到“更改密码”,为root用户设置密码,并点击“执行”。

然后刷新页面,会看到错误提示,这是因为帐户已经设置密码,到WampServer程序安装目录,在apps目录找到phpmyadmin的目录,打开phpmyadmin目录里面的config.inc.php文件,找到下面这一行:

$cfg['Servers'][$i]['password']       = '';

在等号右面的单引号里面输入刚才设置的密码,重新打开phpmyadmin的页面并刷新,这时候phpmyadmin就可以正常访问了。

好了,我已经用WampServer简单的架设起一个Apache + PHP + MySQL的服务器了。

 

2、允许外网访问:

wamp 默认是禁止外网访问APACHE的,左键点击右下的wamp图标Apache - httpd.conf ,搜索关键字 "deny from ",会发现一处 "deny from"将其下的一行"Allow from 127.0.0.1" 之前加一个 #号,表示注释掉,新插入一行,手动输入Allow from all 。保存,重新启动下apache 服务就可以允许外网访问了。

 

3、apache, mysql 服务的开机自动运行

Windows - 开始? - 设置 - 控制面板 - 管理工具 - 服务,找到 wampmysqld, wampapache, 将 "启动类型" 由"手动" 改为"自动" 即可。

 

4、开启支持rewrite module

#LoadModulerewrite_module modules/mod_rewrite.so

 

去前面掉#,修改为

LoadModule rewrite_modulemodules/mod_rewrite.so

 

<Directory />

OptionsFollowSymLinks

AllowOverride None # 修改为AllowOverride All #

Order deny,allow

Deny from all

Satisfy all

</Directory>

 

<Directory"d:/wamp/www/">

#

# Possible values forthe Options directive are "None", "All",

# or any combinationof:

# Indexes IncludesFollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews

#

# Note that"MultiViews" must be named *explicitly* --- "Options All"

# doesn't give it toyou.

#

# The Optionsdirective is both complicated and important. Please see

#http://httpd.apache.org/docs/2.2/mod/core.html#options

# for moreinformation.

#

Options IndexesFollowSymLinks

#

# AllowOverridecontrols what directives may be placed in .htaccess files.

# It can be"All", "None", or any combination of the keywords:

# Options FileInfoAuthConfig Limit

#

AllowOverride None # 修改为AllowOverride All #

#

# Controls who canget stuff from this server.

#

Order allow,deny

Allow from all

</Directory>

 

5、.php配置

 

查找short_open_tag =Off,把off改成On,注意是前面没有#号的那一排。

memory_limit =128M          ;最大内存使用,运行程序提示内存不足时可修改其大小

upload_max_filesize =2M  ;附件大小

 

 

 

、对于中文用户来说,安装结束后,首先要设置的是,把MySQL的数据库默认编码改为UTF-8,这样可以排除很多中文乱码问题:在WAMP5菜单中选择打开my(wamp).ini,设置其中的default-character-set=utf8, 然后重启WAMP5。

 

6、数据库默认的密码是空的,可以在phpMyAdmin中设置root帐号的密码为123456;当然修改之后,就要跟着修改phpMyAdmin的配置文件config.inc.php,否则phpMyAdmin就进不了数据库啦:

$cfg[''Servers''][$i][''user'']= ''root'';

$cfg[''Servers''][$i][''password'']= ''123456'';

 

 

至此,剩下的就是PHP的问题了(数据库提前建好)。花了一下午把PHP了解了一下,写了几句代码,但是,基本功能都实现了:接收客户端的post请求,访问数据库,更新xml,响应给客户端。

 

<?php//获取客户端传来的条形码值book_id$book_id = $_REQUEST['name'];//$book_id=2009081318;//通过条形码值查询数据库,更新xml文件 $link = mysql_connect('localhost', 'root','123456')           or die('Could not connect: ' . mysql_error()); mysql_select_db('test_android') ordie('Could not select database'); $query =" SELECT * FROM `students`WHERE qq = '$book_id' ";  $result = mysql_query($query,$link) ordie('Query failed: ' . mysql_error()); //$result1=mysql_fetch_assoc($result)."<br />";//print_r($result1); $line = mysql_fetch_row($result);//simplexml方法解析xml$xmlfile =simplexml_load_file("note.xml");if (strlen($line)==0)         echo"No results!\n";else{                 $xmlfile->student->name=$line[0];         $xmlfile->student->speciality=$line[1];         $xmlfile->student->qq=$line[2];} $newxml = $xmlfile->asXML();                               //标准化$xml$fp = fopen("note.xml","w");                      //新建xml文件fwrite($fp, $newxml);                                     //写入xml文件fclose($fp);mysql_close($link);//===========================================================================echo "http://192.168.5.184/note.xml";?>


 

所有东西差不多就OK了~~~

进一步打算,先深入理解wamp各部分原理,再在redhat上搭建lamp.
原创粉丝点击