0

我有 Opscode php 食谱,它工作正常......几乎。我对 php.ini.erb 文件进行了修改,但没有按照脚本中的说明复制该文件。我使用的是 ubutnu 基础框,因此我修改php/templates/ubuntu/php.ini.erb并重新创建了 Vagrant 框。我对模板文件所做的更改并没有出现在系统使用的 php.ini 文件中;它只是使用一个完全默认的 php.ini。

另外,我想安装xdebug。所以我制作了自己的食谱,php/recipes/module_xdebug.rb其中包含以下内容:

template "/etc/php5/apache2/conf.d/xdebug.ini" do
  source "xdebug.ini.erb"
  owner "root"
  group "root"
  mode 0644
  notifies :restart, resources("service[apache2]"), :delayed
end

...然后将以下内容添加到php/metadata.rb文件底部:

recipe "php::module_xdebug", "Install the php5-xdebug package"

...并且该文件php/templates/*/xdebug.ini.erb包含:

zend_extension=/usr/lib/php5/20090626/xdebug.so

我将此文件放在所有模板目录中。然而,当我提供时,文件并没有被复制。

另外,我正在尝试下载并提取 Zend Framework。为此,我通过在php/recipes/source.rb文件的底部添加一些代码来作弊:

remote_file "/tmp/ZendFramework-1.12.3.tar.gz" do
  source "https://packages.zendframework.com/releases/ZendFramework-1.12.3/ZendFramework-1.12.3.tar.gz"
  mode 0644
end

bash "Extract ZendFramework" do
  cwd "/tmp"
  code <<-EOH
  tar zxvf ZendFramework-1.12.3.tar.gz
  mv ZendFramework-1.12.3 /usr/share/php5
  EOH
end

directory "/usr/share/php5/ZendFramework-1.12.3" do
  owner "root"
  group "root"
  mode "0755"
  recursive true
end

哪个也行不通,尽管我有点预料到不行,因为它是一个完整的 hack 并且可能充满了错误。

所以我不得不重新评估我的快速学习能力,因为我尝试做的与原版安装不同的唯一事情就是这三件事,而且没有一件是有效的。

任何人都可以对我的(可能很多)失败有所了解吗?

4

0 回答 0