Buenas,
estoy empezando a utilizar Vagrant para trabajar en mis proyectos PHP. Ahora estoy intentando configurar una máquina para que al arrancarla la primera vez se instale apache, php y mysql. Cuando instalo apacho hago que el directorio compartido pase a estar en /var/www
Hasta aquí bien.
Después paso a habilitar el módulo rewrite, crear el virtual host en /etc/apache2/sites-available/000-default.conf
Aquí es donde ya tengo el problema ya que al arrancar la máquina la instalación y configuración van bien (o eso creo ya que no muestra error) pero cuando accedo a la IP asignada y le paso un parámetro a la url me da error.
Os dejo aquí la configuración de Vagrant, el código del script y del .htaccess.
Vagrant file:
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure(2) do |config|
config.vm.box = "hashicorp/precise32"
config.vm.network "private_network", ip: "192.168.33.44"
config.vm.provision :shell, path: "bootstrap.sh"
end
bootstrap.sh
#!/usr/bin/env bash
apt-get update
apt-get install -y apache2
apt-get install -y php5
sudo apt-get -y install mysql-server
sudo apt-get install php5-mysql
sudo apt-get -y install phpmyadmin
if ! [ -L /var/www ]; then
rm -rf /var/www
ln -fs /vagrant /var/www
fi
# setup hosts file
VHOST=$(cat <<EOF
<VirtualHost *:80>
DocumentRoot "/var/www/"
<Directory "/var/www/">
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
EOF
)
echo "${VHOST}" > /etc/apache2/sites-available/000-default.conf
# enable mod_rewrite
sudo a2enmod rewrite
# restart apache
service apache2 restart
echo "Provisioning finished!"
Código .htaccess
# Activates URL rewriting
RewriteEngine On
# General rewrite rules
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ /index.php?params=$1 [QSA,L]