[英]Modify PHAR file
我需要修改一个PHAR文件。 每当我对文件进行更改然后执行它时,我都会收到以下错误消息:
Fatal error: Uncaught exception 'PharException' with message SHA1 signature could not be verified: broken signature'
通过做一些研究,我发现我可以
提取phar,修改它然后“将其放回phar文件”。 我怎么做?
或者在我的php.ini中设置phar.require_hash = false
来禁用签名检查。 不幸的是,这并没有解决问题
我只需要对文件做一些简单的修改,我是唯一一个要使用它的人,所以我更希望快速简单地解决问题
问题是在Symfony网站上,install命令如下所示:
c:\> php -r "readfile('http://symfony.com/installer');" > symfony
正确的命令是
c:\> php -r "readfile('http://symfony.com/installer');" > symfony.phar
并将文件symfony.phar
移动到您想要创建项目的位置,或者将文件symfony
重命名为symfony.phar
。 如果文件名为symfony
,则会出现此错误“sha1签名无法验证损坏的签名”,因为更改文件名也会使sha1无效(这就是散列的工作原理)。
你不能简单地在编辑器中更改phar内容,就像你不能在.zip
或.tbz2
文件中那样做。
唯一可行的解决方案是提取phar,修改提取的文件,然后重新打包phar文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.