草庐IT

docker-file

全部标签

javascript - 完成页面加载后调用 PHP DOM 函数 file_get_html

我们正在尝试从PHPDOM获取url,但我们尝试获取的webapge具有功能(页面加载后更改价格),所以现在我们需要PHPDOM功能file_get_html完成此远程页面的onload功能后获取HTML。$html=file_get_html('https://www.example.com');//Findallarticleblocksforeach($html->find('div.pad15h4a')as$article){echo$article->innertext.'';}foreach($html->find('p.sprcspan.fb')as$pr){echo$p

使用 Docker 的 PHP 开发环境

我目前正在尝试使用NGINX和PHP-FPMDocker容器设置PHP开发环境。现在我知道这可以作为运行这两种服务的单个容器来实现,甚至可以作为多容器设置来实现,其中每个服务都在自己的容器中运行(这是基于我目前的研究)。我的问题可以分为两个问题:如何使用多容器解决方案设置多个不同PHP应用程序并让它们相互通信?我是否必须为每个PHP-FPM容器设置一个NGINX容器,或者我可以设置一个NGINX容器并将其与多个不同的PHP-FPM容器一起使用吗?多容器解决方案是否适合开发环境?还是我的做法完全错误?提前致谢,如有任何提示,我们将不胜感激! 最佳答案

php - docker 和 PHP : getting dependencies (composer) into the container

一点背景:我是docker的新手,还不知道任何最佳实践。我的任务是创建一个基于php的网络服务,我决定使用docker-compose进行配置。因为我们都是花哨的开发人员,所以我们知道-如今不使用composer就无法构建php应用程序。我的问题:我应该在构建中安装依赖项吗?因此,将其添加到我的Dockerfile中:RUNcd/app&&composerinstall--no-interaction--prefer-source--optimize-autoloader或者我应该在开发期间安装依赖项并使用包含的依赖项构建容器镜像吗?我只知道一种不这样做的方法:在开发机器上本地安装依赖

php - 为什么 php 将 $_FILES 值按名称、类型而不是输入文件名的顺序分组?

当我上传文件数组时,我得到以下数组。array(1){["upload"]=>array(2){["name"]=>array(2){[0]=>string(9)"file0.txt"[1]=>string(9)"file1.txt"}["type"]=>array(2){[0]=>string(10)"text/plain"[1]=>string(10)"text/html"}...}}以上述格式而不是以下格式接收的数组背后的原因(技术原因或任何好处)是什么?array(1){["upload"]=>array(2){[0]=>array(2){["name"]=>string(9)

php - php 的 file_get_contents 是否忽略文件锁定?

我已经阅读了php的manualpage关于“file_get_contents”函数,它没有说明“file_get_contents”在php文件锁定方面的行为方式。然而,在评论部分,用户Chris建议file_get_contentsdoesnotnormallyrespectPHP'sflocklocking,i.e.advisorylocking.Youcanworkaroundthiswithsomeextracodetorequestasharedlock,like...我测试成功了。我还测试了即使文件已被flock()锁定独家LOCK_EX可以让另一个php进程通过fil

php - "GET/index.php"404 dockerize Laravel 应用程序

我尝试进行非常简单的设置,以对接Laravel应用程序。即使nginx能够将请求转发到Laravel容器,我仍然得到GET/index.php"404C:\yocto\snapweb>docker-composelogs--followlaravelAttachingtosnapweb_laravel_1laravel_1|[23-Jul-201807:10:04]NOTICE:fpmisrunning,pid1laravel_1|[23-Jul-201807:10:04]NOTICE:readytohandleconnectionslaravel_1|172.18.0.3-23/Ju

php - 如何在官方 docker php 镜像上以非 root 用户身份运行 composer

我使用的是官方的php:alpinehttps://github.com/docker-library/php/blob/master/7.2/alpine3.7/fpm/Dockerfile作为我的基础形象。我的项目基本上是基于Composer的项目。所以我在上面安装了Composer,如下所示。RUNcurl-sShttps://getcomposer.org/installer|php----install-dir=/usr/local/bin----filename=composer当我使用composerinstall安装任何包时,它以root身份运行,因为主php进程以ro

php - 消息 : file_get_contents(sso. json):无法打开流:没有这样的文件或目录

我正在尝试手动从JSON文件中获取数据,而不是从URL中获取数据。我使用函数file_get_contents。我得到了错误:Message:file_get_contents(sso.json):failedtoopenstream:Nosuchfileordirectory即使路径是正确的。这是我的结构项目:->kalenderkerja->application->controllers->agendakerjaKalender.phpsso.json->assets->...这是我在user()函数中的代码Kalender.phppublicfunctionuser(){$ur

php - Docker CodeIgniter 2.2.6 文件上传不工作

我正在尝试在Windows10上使用带有Docker的LAMP堆栈设置运行CodeIgniter2.2.6应用程序。应用程序已启动并正在运行,甚至数据库连接(使用mariadb)工作正常。但是,当我开始创建文件上传功能时,它失败了。浏览器显示“172.18.0.3响应时间过长。”这是我的docker-compose.yml文件:-version:'3'services:php-apache:build:context:./docker/php-apacheports:-8081:80volumes:-./app:/var/www/htmllinks:-'mariadb'mariadb:

php - 如果找不到,我们如何使用 Apache 重定向到新的 HTML 静态内容并回退到旧的基于 CMS 的 PHP 版本? (nginx try_files)

问题:我们正在用Gatsby构建的SSGHTML版本替换旧的基于PHP的网站(基于Statamicv1)。问题是:只有一部分现有页面必须更换,而成员(member)空间、/login和/contact页面必须暂时保留。所以我想知道我应该如何使用新版本调整当前的.htaccess配置首先在特定目录中找到新的静态内容(public/)或者如果不是,则回退到旧的index.php?path=方法。注意事项:使用nginx这将通过try_files指令完成所以,这个问题在某种程度上与:https://serverfault.com/questions/290784/what-is-apache