簡體   English   中英

修改PHAR文件

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM