配置IIS,Apache,PHP过程中遇到的一些问题

时间:2023-08-26 17:20:18
下载了eclipse的最新版本,并且添加了PHP插件。为了支持多语言,决定采用UTF-8编码。但是在开发的过程中,发现代码的自动提示帮助信息显示的是乱码,PHP源文件及注释,均正常。在网上查了很多资料,有设置“General->Workspace编码的”、有设置“General->Conent Type->Text编码的”…,总之,找到的各种办法全部试了,都不好用。
后来无意中发现设置“eclipse目录下eclipse.ini文件”,在文件结尾添加“-Dfile.encoding=UTF-8”,之后重新启动eclipse,发现提示终于正常了。困扰这么长时间的问题终于解决。 安装apache服务时,80端口被iis占用,windows 8,IIS8,用iisreset -stop停止IIS服务,如果机器上安装了SQl Server服务,也要把SQL Server Reporting Services (MSSQLSERVER)这个服务停掉 【关于64位apache的下载】
官网上没有64版,是爱好者们根据源码开发的,谢谢他们的无偿付出!
话说免费开源的东西就是这点不好,没有质量的保证,你投诉无门。
http://www.apachelounge.com/download/,这里可以下载apache win64版本 PHP 在IIS中配置完毕后浏览首页,报【对找不到的文件启用监视】错误,php的错误日志中无记录。把此网站在IIS中的程序池改为“集成”,再访问,开始报错,且记入日志。 XDebug
windows 8 64,php5.4.28,要使用32位的PHP 5.4 VC9 (32 bit),xdebug.org/files/php_xdebug-2.2.5-5.4-vc9-nts.dll才能加载成功。 ThinkPHP中,如果define('APP_NAME','/');这样,就会这样:
http://localhost:50/index.php/Index/://index

配置IIS,Apache,PHP过程中遇到的一些问题

斜杠位置要么留空,要么写的项目名称,要么删除这一条,总之不能写成“/”。

感谢http://www.liuyixi.com/2009/12/30/guanyuthinkphpzhongthis-redirectdeyiwen/给我了灵感,让我有据可查

EPP3真够慢的,经常卡死,失去响应,eclipse也一样,是不是基于eclipse的IDE都这样

当你的Apache2.4无法无论如何也无法启动,总是报the requested operation has failed这个错的时候,不妨试把这个服务重新安装一下,httpd -k uninstall -n "Apache2.4",然后httpd -k install -n "Apache2.4"

一定要注意PHP和Apache的版本对应关系

PHP分为4个版本,64/32,ts/nts两两组合

如果是在IIS下跑PHP,就要下载NTS版PHP,目录里面没有php5apache2_4.dll这个文件

如果是在Apache下跑PHP,就下载TS版,目录里自带了php5apache2_4.dll,32位版PHP就是32位版dll,64位版就是64位版dll,不必到处找。

64位版Apache官方没有公布,http://www.apachelounge.com这里有下载

如果版本对应关系不正确,很可能报“Cannot load C:/php-5.4.28-Win32-VC9-x86-ts/php5apache2_2.dll into server: The Apache service named \xb2\xbb\xca\xc7\xd3\xd0\xd0\xa7\xb5\xc4 Win32 \xd3\xa6\xd3\xc3\xb3\xcc\xd0\xf2\xa1\xa3”这个错,未必能在apache的错误日志里找到,到Windows事件中可以查看。

使用cmd操作apache时,要记得以管理员身份运行

PHP.ini的修改

必须修改的项:

  • extension_dir=“你的ext目录的绝对路径”,这里默认是注释掉的,如果不改会报各种错,特别是不支持mysql
  • Dynamic Extensions节下的各种扩展,需要什么就放出来什么
  • date.timezone="PRC" 就是The People's *,*,我曾经很习惯地写成了RPC

The Apache service named reported the following error:
>>> Invalid command 'PHPIniDir', perhaps misspelled or defined by a module not included in the server configuration .

原因和解决方案:

之前是这样的:

LoadModule php7_module D:/phpx64/php7apache2_4.dll
PHPIniDir "D:\php5.6.25"

改为:

LoadModule php5_module D:/php5.6.25/php5apache2_4.dll
PHPIniDir "D:\php5.6.25"

因为启用了D:\php5.6.25之后,D:\phpx64目录的PHP已经无效