【问题标题】:Provision a vagrant box with PHP 7.0使用 PHP 7.0 提供一个 vagrant box
【发布时间】:2016-05-31 06:08:31
【问题描述】:

我正在尝试使用 Apache 2.4 和 PHP 7.0 配置一个 ubuntu/trusty64 vagrant box,但没有成功。

这是我的 provision.sh 脚本:

#!/usr/bin/env bash

# Vagrant instance provision script

# Php 7.0
sudo add-apt-repository ppa:ondrej/php -y
sudo apt-get update
sudo apt-get install php7.0 -y

# Apache 2.4
sudo add-apt-repository ppa:ondrej/apache2 -y
sudo apt-get update
sudo apt-get install apache2 -y
if ! [ -L /var/www ]; then
  rm -rf /var/www/html
  ln -fs /vagrant /var/www/html
fi

当我流浪时,apache 可以正常工作,但 PHP 不能。但是,如果我删除 PHP 安装行,

sudo apt-get install php7.0 -y

并在虚拟机运行后从命令行执行,PHP 工作正常。

任何想法为什么会这样或如何修复框的配置以便 PHP 从一开始就工作?

【问题讨论】:

  • 您使用哪个盒子/操作系统?刚刚尝试使用 ubuntu 15.10 并且可以正常工作 php 已安装:PHP 7.0.7-2+donate.sury.org~wily+1 (cli) ( NTS )
  • 我使用的是 ubuntu/trusty64 盒子。安装了 PHP,但解释器对你有用吗?
  • 我没有带 php 页面的 apache,所以无法测试但可以运行 php -r 'phpinfo();',它会返回结果
  • 您是否尝试过更改安装顺序?我通常首先安装apachenginx,然后才安装-php

标签: apache vagrant ubuntu-14.04 php-7 vagrant-provision


【解决方案1】:

最初的问题已经包含答案。这是执行命令的顺序。如果在安装 Apache 之前安装了 PHP,那么某些配置文件将不会自动配置。这可以手动完成,但需要一定的专业知识。我还没有遇到简单的教程或手册。

#!/usr/bin/env bash

# Vagrant instance provision script

# Php 7.0
sudo add-apt-repository ppa:ondrej/php -y
sudo apt-get update

# Apache 2.4
sudo add-apt-repository ppa:ondrej/apache2 -y
sudo apt-get update
sudo apt-get install apache2 -y
if ! [ -L /var/www ]; then
  rm -rf /var/www/html
  ln -fs /vagrant /var/www/html
fi

# Changed this line
sudo apt-get install php7.0 -y

我也遇到过这个问题。所以希望这个答案能给其他人一些帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-09
    • 1970-01-01
    • 2022-05-09
    • 1970-01-01
    • 2015-09-26
    • 1970-01-01
    • 2017-07-06
    相关资源
    最近更新 更多