安全线程的PHP5.6版本是否可以配置Zend Guard Loader for PHP 5.6,为什么配置失败,快来帮我解决问题?

安全线程的PHP5.6版本是否可以配置Zend Guard Loader for PHP 5.6,为什么配置失败,快来帮我解决问题?,第1张

你配置的问题??

我们以php56 (

php56 VC11 x86 Non Thread Safe

版本为例,说明一下:x86是32位系统的意思,  Non Thread Safe是非安全线程, Thread Safe是安全线程。php官网下载地址:>

下载好了php56 ,自己配置一下phpini。

接下来,是我们说的重点。首先我们去官网下载,选择相适用的php版本的ZendGuard ,我们这里是php56版本,所以要下载适用它的ZendGuard版本。ZendGuard的官方下载地址:>

我们这里是下载基windows系统的ZendGuard ,(如果你系统是linux,你就下载linux的ZendGuard)

解压并提取  ZendLoaderdll(Windows系统)或ZendGuardLoaderso(Linux),对应你的PHP版本。

下载了Zend Guard Loader

for PHP 56,解压文件后复制ZendLoaderdll到php安装路径的ext目录中,

在phpini配置加入:

[Zendloader]

zend_extension="C:/php/ext/ZendLoaderdll"

zend_loaderenable=1

zend_loaderdisable_licensing=0

zend_loaderobfuscation_level_support=3

zend_loaderlicense_path=

总结一下:

Linux 和 Mac OS X环境下

zend_extension="/usr/lib/php/modules/ZendGuardLoaderso"(替换成自己的ZendGuardLoaderso路径)

zend_loaderenable=1

zend_loaderdisable_licensing=0

zend_loaderobfuscation_level_support=3

重新启动Web服务器。

Windows(非线程安全的php版本)

zend_extension="c:/php/ext/ZendLoaderdll"(替换成自己的ZendGuardLoaderdll路径)

zend_loaderenable=1

zend_loaderdisable_licensing=0

zend_loaderobfuscation_level_support=3

重新启动Web服务器。

测试: 新建文本文档,填写下面内容:<phpphpinfo();>保存,然后更改文件名为phpinfophp放到你域名根目录,然后通过你的域名+phpinfophp浏览查看,有查看到ZendGuard 就说明安装成功,否则就安装失败。

或者:打开windows的“运行”输入cmd,切换路径到你php安装目录,执行php -v 回车。假如:你的php安装在e盘的php文件 ,命令如下:①cd E:/php 回车。②E: 回车  进到你想要的路径下。③php -v 回车 有查看到有加载zendloader 就说明安装成功,否则就安装失败。

安装ZendGuard失败原因如下:①你安装了低于php53的版本②不支持64位的php,只支持32位的

③Windows下,Zend Loader only works with NTS PHP!

ZendGuard只支持NTS(Non Thread Safe)版的php,TS(Thread Safe安全线程)版的不支持。

如何判断:

通过phpinfo(); 查看其中的 Thread Safety 项,这个项目就是查看是否是线程安全,如果是:enabled,一般来说应该是ts版,否则是nts版。

按住ctrl+f快捷键,输入Thread Safety ,查看里面属性是不是enabled。

附上NTS和TS的区别

NTS:Non Thread Safe

非安全线程, 在执行时不进行线程(Thread)安全检查。

TS:Thread Safe

安全线程, 执行时会进行线程(Thread)安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。

注意事项

ZendGuard只适用非线程安全版本的php

今天在安装Zend Optimizer遇到了几个问题,特整理如下:安装Zend Optimizer先停止Apache需注意以下几点:(1)Zend Optimzer 的安装目录要指定为E:\server\Zend:(根据你自己)(2)Web server选择Apacher2x(3)在安装过程中提示选择phpini的路径,手动指定为E:\server\php;(4)安装过程中提示chose the root folder of your web server 即选择apache的根目录位置,指定为:E:\server\apacheZend Optimizer 安装完成后会自动重启apache服务,重启完成后需要再次打开IE浏览器窗口,查看testphp支持信息,观察是否包含了Zend optimizer支持信息,如果没有,则说明Zend Optimizer没有安装成功!解决方法:修改phpini文件增加对Zend的支持,查找zendzel_compatibility_mode=Off在它下面加上[Zend]zend_optimizeroptimization_level=1023zend_extension_ts="/Zend/ZendExtensionManagerdll"zend_extension_manageroptimizer_ts="/Zend/Optimizer-330"; zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TSso保存,重启apache服务 在配置php服务器的时候,所有的东西都安装好了,就是浏览一个要求zend的程序的时候,总是提示"Zend Optimizer not installed",卸载重新安装也不行,很是郁闷。网上搜索了一下,有这个问题的也很多,看到解决的问题优化代码相对太多,只好总结了一个: 大多说的关于php中关于zend配置的问题,这个可能是权限问题zend安装时有的东西没有写入phpini中吧。我在phpini里的zend统一改成如下代码:C盘系统下的PHPINI以及安装目录下的PHPINI里面的ZEND信息要一致。[Zend]zend_extension_manageroptimizer_ts="C:\Program Files\php_iis\zend\lib\Optimizer-330"zend_extension_ts="C:\Program Files\php_iis\zend\lib\ZendExtensionManagerdll"zend_extension=/usr/local/Zend/lib/ZendExtensionManagerso;zend_extension_manageroptimizer="C:\Program Files\php_iis\zend\lib\Optimizer-330";zend_optimizerversion=330zend_optimizerencoder_loader=1zend_optimizeroptimization_level=15;zend_optimizerlicense_path =; tab-width: 4; End:问题解决,好轻松!

主机名就是你网站的域名,也叫主机头,如果你只用 IP 来访问这个站点,那么这个可以不写。
利用主机名可以实现虚拟主机,即一个IP多个网站,每个网站都有自己的主机名而且不一样,当浏览器发送请求到服务器时,IIS会根据请求的域名自动转到对应的网站上。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/10347842.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-07
下一篇 2023-05-07

发表评论

登录后才能评论

评论列表(0条)

保存