nginx的php fastcgi模式PATH_INFO解决办法Magento正常

8 条评论

今天vps上的一个朋友需要安装Magento,但是安装的时候出现404错误.
文件无错,文件夹以及绑定都没问题,但是还是出现404错误.
搞了很久才知道原来是php的PATH_INFO引起的问题.
于是乎就找Google大神,网上关于run Magento with Nginx 这篇文章其实是不行的.因为没有设置path_info.

他的方法是先修改fcgi.conf

PHP免费加速工具eAccelerator

0 条评论

eAccelerator概念:
eAccelerator 是一个免费开源的PHP加速、优化、编译和动态缓存的项目,它可以通过缓存PHP代码编译后的结果来提高PHP脚本的性能,使得一向很复杂和离我们很远的PHP脚本编译问题完全得到解决。通过使用eAccelerator,可以优化你的PHP代码执行速度,降低服务器负载,可以提高PHP应用执行速度最高达10倍。

FastCGI 进程超过了配置的活动超时时限

0 条评论

For those of you not familiar with the "FastCGI" extension its a very light weight and high speed CGI engine that's designed to speed up PHP and Perl based sites. More info can be found here



http://www.fastcgi.com/drupal/



.

Anyway After its all setup and configured you may still have to tweak it. One of the things I had to do was extend the default activity timeout window. This is how much time the FastCGI extension will "wait" for PHP to get finished doing whatever its doing. For those of you familiar with FastCGI before you may have worked with the fcgiext.ini file - well on Windows 2008 that file is no longer available. Instead you must use following commands to set your timeout.

I had to tweak it to get the Gallery2 photo album to work - without this setting the connection would time out waiting for a large set of photos to be uploaded and processed. This fixed it.

 

 


XML/HTML代码

  1. %windir%\system32\inetsrv\appcmd set config -section:system.webServer/fastCgi /[fullPath='C:\php\php-cgi.exe'].activityTimeout:600  

查看当前配置

%windir%\system32\inetsrv\appcmd list config -section:system.webServer/fastCgi
都是在cmd下运行

也可以在C:\Windows\System32\inetsrv\config\applicationHost.config 进行编辑

PHP has encountered an Access Violation at 7C94BD02 问题解决

1 条评论

下面是网上的一些解决方法:

PHP has encountered an Access Violation at 7C94BD02 解决方法

先重启一下IIS就能当时解决这个问题!

解决方法如下:

第一种可能:

去掉 php中 eaccelerator 的扩展 这样做能够解决您的问题,不过可能会加重系统负担 因为eaccelerator主要是为了节省系统资源的东西

具体做法是找到php.ini 如果是我帮您配置的,一般在c:/php/php.ini或者 c:/winnt/php.ini 或者c:/windows/php.ini

去掉


XML/HTML代码

  1. zend_extension_ts="C:\php\extensions\eaccelerator_win_xxx.dll" eaccelerator.shm_size="16" eaccelerator.cache_dir="c:\temp" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="0" eaccelerator.shm_prune_period="0" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9"   

ea主要是在unix环境下开发的,但是作者忽略到windows实际上不像u主机那样,是没有u主机的那种内存共享机制的 这个bug已经提交给他们了,希望0.9.5能够解决

当然,如果您的机器这个问题不严重,建议还是保留,ea是一块非常优秀的Php缓存+加速软件 配合zo使用,将会降低系统负担 50%-80%左右,提高负载能力、速度和效率 200%左右

第二种可能

session_save_path 需要设定一个实际的物理路径,并且该目录需要everyone的所有权限,类似U主机的0777

第三种可能 c:/winnt/temp 或者 c:/windows/temp 也需要everyone的所有权限,类似U主机的0777

第四种可能 您的内存严重不足,查看一下,如果有问题,请加内存,最好是一次加两条 比如加1G内存,最好是加2条一模一样的512M。否则没有启用双通道,效果也很一般

第五种可能 ZendOptimizer和php的搭配不是很好 换个版本试试看 目前比较稳定的搭配是 php4.3.11+zo 2.5.10a 或者php4.4.1+zo 3.0 beta2

第六种可能

这种多属于用win2003的用户 他们在应用池中设定了限制 比如多长时间回收,最大使用内存多少等等 这些设置势必造成这个经典的php错误