在使用PHP调用谷歌浏览器并使用proc_open函数渲染网页内容时,可能会遇到iframe标签不加载的问题。这通常是因为谷歌浏览器默认情况下禁用了iframe加载。

要解决这个问题,你可以尝试以下几种方法:

  1. 使用Chrome命令行参数启用iframe加载:
$cmd = 'google-chrome --disable-web-security --disable-gpu --disable-software-rasterizer --disable-features=NetworkService --ignore-certificate-errors --headless --no-sandbox --disable-dev-shm-usage --remote-debugging-address=0.0.0.0 --remote-debugging-port=9222';

这些参数将禁用一些安全功能,并允许iframe加载。但是请注意,这可能会导致安全风险,只在可信任的环境中使用。

  1. 使用其他浏览器或浏览器内核: 尝试使用其他浏览器或浏览器内核,如Firefox或PhantomJS。这些浏览器可能默认启用了iframe加载。

  2. 通过修改浏览器的配置文件: 可以尝试通过修改谷歌浏览器的配置文件来启用iframe加载。具体步骤如下:

    • 找到谷歌浏览器的配置文件,通常在用户目录的AppData文件夹中。
    • 在配置文件中找到并编辑Preferences文件。
    • 在Preferences文件中找到'webkit.webprefs'部分。
    • 在该部分中添加或修改以下行:
      'web-security-enabled': false,
      'allow-running-insecure-content': true,
      'allow-file-access-from-files': true,
      'allow-file-access': true
      
    • 保存文件并重新启动谷歌浏览器。

这些方法中的任何一种都可能解决iframe标签不加载的问题。但请注意,使用这些方法可能会引入安全风险,请在可信任的环境中使用,并确保谨慎处理用户输入。

PHP使用proc_open渲染网页时iframe标签不加载的解决方法

原文地址: https://www.cveoy.top/t/topic/qlce 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录