如何配置Window2003 iis+mysql+php环境
需要的准备:
1WinServer 2003 ISO 虚拟机用,如果是在服务器上就不用了。
2WinServer 2003 IIS 安装包,下的是60,其实70也应该可以的。由于WinServer2003不自带安装包,所以需要自己另外下载。
3PHP官方解压包 PHP 54X (PHP For Windows)版 32位(x86)和64位(x64)自行判断(PS:现在PHP已经更新到PHP553版,但是因为PHP55的版本不再向后兼容XP和Win2003版 所以如果用了最新版,运行php-cgiexe时会弹出 “映像文件有效,但不适用于此类型计算机”,请下载前面的版本,经测试54是支持的)
4FastCGI安装包 (PS:由于PHP531发布时已经找不到php5isapidll,所以配置PHP+IIS不能用ISPAI映射的方法配置了,所以需要下载FastCGI配置,IIS6选用FastCGI For IIS FastCGI 15 for IIS x86 / x64,IIS7的自选适用的版本)
5MySQL 56130 目前最新的(MySQL只要找个能安装上的,符合模板的运行环境的就行。)
6Visual C++ 2008,Visual C++2010和net Framework 40
步骤如下
step 1:
安装IIS服务器。添加删除windows组件中选择应用程序服务器,详细信息勾选IIS等选项,安装时通过浏览自行下载的安装包安装。
step:2
把PHP解压包解压出来,然后将里面的phpini-development(测试用)或phpini-production(适合上线当产品使用)其中随便一个复制一份,然后改名为phpini,更改里面的参数配置。
参数修改参照度娘经验:
找到; extension_dir = "/"这行,修改为extension_dir = " D:\php\ext" (注意去掉前面的";")
;datetimezone = 修改为 datetimezone ="asia/shanghai" (注意去掉前面的";")
short_open_tag 设置为 On
extension=php_mbstringdll(宽字符支持,推荐选中 去掉前面的";")
extension=php_gd2dll(PHP的GD库支持,必选 去掉前面的";")
extension=php_mysqlidll (去掉前面的";")
extension=php_mysqldll(使PHP支持MySQL,必选 去掉前面的";")
(PS: 文件里面的;fastcgiimpersonate=1 一定要把前面的;去掉,不然测试php时会出现 FastCGI常见错误(0x80070585)。
保存退出)
step 3:
在系统上配置PHP:
方法1直接把设置好的phpini扔到c:\windows目录下。(最简单有效的办法)
方法2右键我的电脑,高级,环境变量 把ext文件路径和php路径添加进path的值后面。
step 4:
安装FastCGI,打开其默认的路径的配置文件 C:\WINDOWS\system32\inetsrv\fcgiextini’。
在最后添加(即[TYPE]标签后)
php=PHP
[PHP]ExePath=PHP的安装路径\php-cgiexe
step 5:
在IIS中添加配置fcgiextdll和php扩展名的配置。
打开IIS在网站上选择相应的右键点击并打开属性,点开下方的配置按钮,点击添加,浏览选取fcgiextdll,后续名填写php,点击确认。
step 6:
最基本PHP+IIS配置已经完成。MySQL直接安装就可以
网上也有具体的安装教程,但是需要注意的是,安装时选择模式时注意,最好选择custom自己选择相应的,而且root账号最好设置密码。
新版MySQL需要安装net Framework40,而且WinServer2003是不自带这些的,需要自己下载,另外安装比较麻烦还需要下载WIC包,但是微软官网都可以找到。
另外net Framework 40 在WinServer2003上安装时还需要注意的细节是40版还有很多小的补丁版本,有可能因为版本太旧或不合适系统提示 Unable to find a version of the runtime to run this application
step 7:
测试网站:
最后在IIS默认网站目录下新建一个indextxt
输入
<php echo "Hello World!">
保存,改名为indexphp
浏览器输localhost/indexphp
页面输出Hello World!即成功。
经过以上步骤已测试成功
麻烦你吧问题描述清楚,你这问题先后矛盾,显示只能在局域网中访问,后来用其他浏览器打不开,这个跟浏览器貌似无关吧。
其次回答根据我自己的理解你关于这个题目的问题:
有公网IP,但是你搭建php环境的机器是内网环境,需要在路由设备上做端口转发,转发之后可能仍然无法访问,因为电信或联通可能屏蔽了80端口的访问,把web服务器修改成一个不常用的端口
在windows下安装apache php mysql
从各官方网站下了APACHE2050、PHP5、MYSQL4020、PHPMYADMIN257
apache_2050-win32-x86-no_sslmsi
php-500-Win32zip
mysql-4020d-winzip
phpMyAdmin-257zip
系统 win2003 系统盘为: D盘
第一步: 安装apache 并配置支持PHP
点击安装文件apache_2050-win32-x86-no_sslmsi
将apache安装在 D:\apache2 目录(随自己喜好)下
将php-500-Win32zip 里内容解压到 D:\php 里
找到 php目录里的 phpini-dist 重命名为 phpini 并拷到 windows目录里(win2k 里为winnt)
如我的phpini是拷到 D:\windows目录
再将php目录里的 php5tsdll,libmysqldll 拷到 系统目录(system/system32) 如我的是D:\windows\system里
配置apache里的httpdconf
打开 D:\Apache2\conf\httpdconf 这个文件
找到 AddDefaultCharset ISO-8859-1 将其改为 AddDefaultCharset GB2312 (让默认语言编码为简体中文)
找到 DocumentRoot "D:/Apache2/htdocs" 将其改为你的WEB目录(可不改)如我的为 DocumentRoot "D:/website"
找到 DirectoryIndex indexhtml indexhtmlvar 在后面加入 indexhtm indexphp
选择安装模式: 模块化模式安装 或 CGI模式安装 (选一样即可)
--------------模块化安装配置------------------------------------
找到 #LoadModule ssl_module modules/mod_sslso 这行,在此行后加入一行
LoadModule php5_module d:/php/php5apache2dll
其中d:/php/php5apache2dll 为你php目录中php5apache2dll所在的位置
找到 AddType application/x-gzip gz tgz 这行,在此行后加入一行
AddType application/x-httpd-php php
---------------------------------------------------------------
--------------CGI安装配置--------------------------------------
找到 AddType application/x-gzip gz tgz 这行,加入如下即可
ScriptAlias /php/ "d:/php/"
AddType application/x-httpd-php php
Action application/x-httpd-php "/php/php-cgiexe"
---------------------------------------------------------------
此时PHP环境基本已经配置成功
在WEB根目录(如我的D:\website)里建一个名为testphp的文件内容如下
< echo phpinfo(); >
重新启动apache服务
用浏览器打开 http://localhost/testphp
如果可以看到php配置输出信息就OK了
你只问了搭建php服务器啊。
xml:namespace prefix = st1 />这篇文章可以说是众多的 IIS下配置php最实用最精简的一篇技术文章了,对于那些使用一键安装php+mysql+iis和用installer版本安装包的拖鞋可以忽略本文,并且对于网上最经典的“Windows配置Apache+MySQL+Php+phpMyAdmin"等文章,我觉得对于刚学会用电脑的朋友很适合看,要配置服务器的朋友看着就会觉得太简单和长篇了,本文用最精练的步骤进行安装。以PHP为标准因为PHP5 PHP4 有文件夹命名的差异,不过触类旁通,请根据实际版本进行变化(文章虽然说的是PHP5214,我实践主要是PHP4,只是文件夹的名字或许有点出入。)==================================================================================1下载php-win32压缩包,解压之后重新命名为php放至D:\php 。2进去D:\php,找到phpini-dist 和 phpini-recommended 这两个都是PHP的配置文件,phpini-dist是默认的配置文件, phpini-recommended是推荐使用的配置文件,后者在PHP手册中有讲,是优化了性能和安全的。这里我们相信群众,把phpini-recommended重新命名为phpini。 3 设置环境变量。为了以后升级方便,我们这里摒弃传统的复制DLL和phpini到C盘系统文件夹下的方法,用添加系统环境变量path:
在桌面“我的电脑”--右键--属性---高级---环境变量,在最下面的列表中的path中添加php的路径和dll等的路径d:\php;d:\phpextensions;d:\php\dlls(php5是没有这个文件夹的,请灵活变化);接着新建一个环境变量,变量名为PHPRC,变量值为:D:\php\phpini也就是phpini配置文件所在的路径。添加完后需要重启服务器才能生效,你可以等下面的操作完成以后再重启服务器。4 打开PHPini我们搜索extension,找到extension_dir = "/" ,把它修改为实际路径extension_dir = "d:\php\ext" ,这个是PHP要调用的一些DLL(其中php4环境下则是d:\php\extensions\)。
5打开phpini,搜索doc_root,修改为你的web存放的路径如d:\wwwroot或者留空;
6在X盘新建一个文件夹tmp,设置iusr_用户可读写权限,再在phpini文件中,把sessionsave_path设置为X:\tmp,主要用于保存session会话临时文件;
7开启extension模块(这个可以参考下图,详细可以根据你的实际情况启用),也就是功能模块组件;如果有第三方模块如iconv,则需要把相应的dll文件拷贝到d:\php\ext文件夹里。
8权限配置,默认情况下users组用户对D:\php有读取权限的话是不需要再做其它设置的,但是有的管理员如果修改过默认权限,如把D盘的users组权限给删除了,这里就要进行权限设置了。
D:\php目录分配给IIS 专用用户(通常为 IUSR_MACHINENAME)或者IIS_WPG组读取的权限;
如果还安装有zend的话,也需要对zend安装目录分配IUSR_MACHINENAME读取权限;
webroot网站目录分配IUSR_MACHINENAME读取权限
webroot下的upload目录分配IUSR_MACHINENAME读写权限。C:\windows\temp目录分配IUSR_MACHINENAME读写权限,这个主要是默认情况下php使用"文本文件上传"方法上传文件的临时存储目录,而另外一种"二进制文件上传"方法上传文件的临时存储目录是上面设置的x:\tmp。对于"文本文件上传"方法的临时目录需要改变为其它目录的话,需要在phpini里设置upload_dir_tmp为你希望设置的具体路径,再设置该目录IUSR_MACHINENAME用户的读写权限。这个目录有的时候需要设置users可读取权限。9IIS 设置打开IIS服务管理器,右键网站属性-->主目录,执行权限设置为"纯脚本",配置->映射-->添加D:\php\phpisapidll,扩展名为php ,动作复制其它的POST,GET,HEAD,DEBUG。然后添加indexphp默认文档。 打开IIS服务管理器,右键网站属性-->ISAPI筛选器-->添加-->名称为php,可执行文件为D:\php\phpisapidll,最后确定。
10 设置web服务扩展:打开 IIS服务管理器,进入 web 服务扩展,点击“添加一个新的 web 服务扩展”,“扩展名”中输入名称,例如 PHP,再点击“添加”按钮,点击“浏览”选择ISAPI 文件phpisapidll作为“文件路径”后点“确定”,然后选中“设置扩展状态为允许”并点“确定”(有的地方是设置“允许”“所有未知的ISAPI扩展”,其实道理一样)。
如果碰到 CPU 占用率达到 100%,则取消选中“缓存 ISAPI 应用程序”(“主目录”下点“配置”按钮”)。 重新启动IIS,至此,PHP的安装已经完成,接下来是一些安全问题。 这时候最好写张phpinfo()的页面做为测试,察看一下当前配置情况。11访问需要输入用户名一般提示输入用户名,密码这些,可能是权限设置问题,PHP目录添加IUSR_MACHINENAME 这个用户默认权限就行了。下图为extensions一般设置图:=====================================================================================tips1:关于时区设定的说明:
从php510开始,phpini里加入了datetimezone这个选项,默认情况下是关闭的,也就是显示的时间(无论用什么php命令)都是格林威治标准时间,和我们的时间(北京时间)差了正好8个小时,如果你对这个比较在意,那就修改phpini的配置。 打开phpini把datetimezone前面的分号去掉,在=后面加XXX,重启http服务(如apache2或iis等)即可。
关于XXX,大陆内地可用的值是:Asia/Chongqing、Asia/Shanghai、Asia/Urumqi(依次为重庆,上海,乌鲁木齐),港台地区可用:Asia/Macao、Asia/Hong_Kong、Asia/Taipei(依次为澳门,香港,台北),还有新加坡:Asia /Singapore,以上没有北京,不过接着往下看,其他可用的值是:Etc/GMT-8,Singapore ,Hongkong,PRC(中华人民共和国)。
0条评论