<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] ## 常見問題 1. 報錯:**"load file /www/wwwroot/some_file.php failed, Error: %s [%d]"** >[info] 確認`some_file.php`的文件權限是否正確,或者查看文件是否有損壞的情況(加密之后很多FTP工具會導致文件損壞)。 2. 報錯: **"the code encrypt by php 7.1 , but the loader version is 5.6"** >[info] 加密時候的版本號要和解密端(運行加密的php代碼的機器)的php版本號對應上。 3. 安裝 loader 擴展后 運行一個非常簡單邏輯的加了密的 php 代碼 報"segment fault"或"Allowed memory size of xxxx"錯誤 >[info] 1. 確保你的php沒有安裝incube loader、xdebug、zend guard loader擴展。 > 2. 確保swoole_loader的版本和加密器的版本對應上,例如1.9版本的加密器對應1.9版本的loader。 > 3. 確保你的php是非`Debug`版本,使用 `php -i | grep "Debug Build"`查看是否有`Debug Build => yes`,`Swoole Compiler`不支持`Debug`版本,請安裝非`Debug`版本的`PHP` 4. 報錯:**"PHP Fatal error: Unknown: product xxxxxxx can not find in license file in Unknown on line 0 Fatal error: Unknown: product xxxxxxx can not find in license file in Unknown on line 0"** >[info] 添加授權信息后加密的代碼包里面會包含一個 `license` 授權文件,`loader` 端需要在`php.ini`中添加以下配置: `swoole_loader.license_files=/yourpath/swoole-compiler.license` >[danger] `yourpath` 為存放 `license` 授權文件的路徑 5. 訪問提示:"Swoole_loader ext not installed" >[info] 1.確認你的 `swoole_loader` 擴展是否安裝成功 > 2.確認你的PHP版本、加密器版本以及 `swoole_loader` 的版本是否一致 6. 報錯:**"Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 18446744072850426110 bytes) in Unknown on line 0"** >[info] 錯誤原因:加密器版本和loader版本不一致 解決辦法:加密器版本和loader版本對應上即可 7. 報錯:"Fatal error: Unknown: the license config file format error , use ini format and do not modify it in Unknown on line 0 " >[info] 錯誤原因:license文件上傳損壞,可使用md5sum或sha1sum查看對比 解決辦法:更換上傳文件的工具,推薦scp等 8. 多個 license 文件,配置正常卻報錯"Fatal error" >[info] 錯誤原因:可能 `product_name` 存在相同,導致無法正常匹配`license`文件 解決辦法:使用`swoole_get_license()`函數打印配置信息,查看是否相同,如果相同需要修改product_name后重新生成license 9. license 文件加載報錯 **"the file xxxx.license can not access"** >[info] 錯誤原因1:確保存在此license文件,并且PHP項目有權限讀取 錯誤原因2:確保php.ini的open_basedir設置正確,能讀取到這個license所在目錄 10. 形如以下報錯,找不到函數或者找不到類的屬性,并且屬性名或者函數名是亂碼的 ```php Call to undefined method Drupal\user\Entity\User::PUF`BTBxUMD() ``` >[info] 請先確認源代碼是否運行正常,即查看源代碼中是否存在對應的函數名或屬性名。如果存在并且是最新版本的loader擴展,請聯系微信客服。 11. 加密時報錯: ```bash swoole_encrypt_file(): file /tmp/swoole_encrypt/services/gis/lib/Slim/Router.php have been encode, skip it ``` 請查看相關目錄中的文件是否存在已經被加密過的代碼,可以在PHP源碼目錄使用`grep -R "SWOOLEC" ./`進行查找。 ## FTP 工具 推薦使用 scp、winscp、寶塔,禁止使用 filezilla >[danger] 使用winscp時需要將傳輸模式改為**二進制文件** ![](https://img.kancloud.cn/b3/55/b35560b0c75e3a2dd1f18b70d8b4bbf9_1056x692.png) ## loader 擴展兼容性 因為 `swoole_loader` 無法和 `xdebug`、`ioncube`、`zend guard loader`、`swoole_tracker` 擴展兼容,使用前需要先卸載。 在`mips`架構或`UOS`系統下,`swoole_loader`和`opcache`沖突,使用前需要先卸載。 ## 使用 Swoole Compiler 是否會降低性能 Swoole Compiler 不存在運行時解密還原 PHP 源代碼的邏輯,二進制目標文件只有經過處理的 opcode 二進制指令和內存數據,在第一次運行時將指令和數據載入內存,處理請求時沒有任何性能消耗。 ## 是否有綁定客戶端機器 Mac 地址或域名功能 試用版本不支持此功能。正式版已經支持。 ## Swoole Loader 與 Opcache `Swoole Compiler` 軟件本身就是將 PHP 代碼編譯為經過特殊處理的`opcode`,所以使用`Swoole Loader`加載程序時,不需要其他`OpCache`擴展,包括`opcache`、`apc`、`ZendGuardLoader`、`eAccelerator`等擴展。 如果你的應用程序中,同時有加密代碼和非加密代碼。當`swoole_loader`發現是非加密代碼時,會將編譯控制權轉給`opcache`,由`opcache`實現代碼的加載。 ### `Opcache JIT` 引起的 `502` 問題 **請注意 `Opcache JIT` 與 `Swoole Loader` 存在不兼容,若要同時使用 `swoole_loader` 和 `opcache` 時必須要修改 `php.ini` 關閉 `opcache.jit`** ```ini opcache.jit=0 ``` ## 加密器與 Composer 現代的 php 項目大部分都用 composer 做依賴管理,需要注意的是如果你的項目加密后執行`composer install`有可能出現問題,因為 composer 會分析你的項目所有的類并生成 autoload_classmap.php。如果加密的代碼 composer 是無法分析的,會導致無法加載類。 解決方案:先 composer install 拉下來 vender 目錄 再進行加密,加密的時候可以通過白名單來排除 vendor 目錄,或者連著 vendor 一起加密也可以(vendor 非常大的話會比較慢) ## 關于文件軟鏈接 不要在項目中有軟鏈接,否則在線加密會丟失文件,本地加密也會丟失軟鏈(直接把軟鏈接的文件當做了真實的文件) 如報錯: ``` swoole_encrypt_file(): open file error (in /tmp/compiler/xxxx/public/storage) (out /tmp/swoole_encrypt/public/storage): No such file or directory ``` >[danger] 這里的`storage`就是個軟鏈接,刪除掉重新加密即可。 ## 配置文件格式或PHP代碼格式錯誤 1. 離線版在加密時指定了配置文件,但是卻提示`出錯了:未找到,請檢查swoole-compiler的安裝情況`,請確定改配置文件格式是否為 `unix` 格式; 2. 如果某個文件加密不了,請檢查該文件的PHP語法是否正確以及文件格式是否為 `unix` 格式; 可能是在 Windows 下編輯上傳到 Linux,導致文件格式為`DOS`格式 ## 數據類型移植 如果`loader`是跑在`ARM`上的,那么在編譯`PHP`的時候需要加上`-fsigned-char`選項。在`PHP`的`Makefile`里面,找到`CFLAGS`,然后追加一個`-fsigned-char`。 例如,原來的`CFLAGS`是這樣的: ```Makefile CFLAGS = $(CFLAGS_CLEAN) -prefer-non-pic -static ``` 那么你需要改成: ```Makefile CFLAGS = $(CFLAGS_CLEAN) -prefer-non-pic -static -fsigned-char ``` 如果之前編譯過`PHP`,你需要重新編譯`PHP`: ```bash make clean && make && make install ``` >[danger] 注意:一定要執行 make clean ## `CentOS 8` 安裝時提示依賴檢測失敗,缺少 `libnsl.so.1` 執行以下命令即可。 ```shell dnf install libnsl ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看