I’ve got an Ubuntu 14 VM running on a windows 10 host.
I’ve installed nginx and using
config.vm.network "forwarded_port", guest: 80, host: 8080
in my Vagrantfile I can see the default nginx page when I visit
127.0.0.1:8080 in my browser on the host machine.
With that working I installed wordpress in a folder so that it would appear as
http://127.0.0.1:8080/aqua/
that worked as well and the wordpress site is visible at the http://127.0.0.1:8080/aqua/ address in Windows 10
But a strange thing happens in my VM. I can wget the root of the server without an issue.
wget localhost/
--2016-03-23 21:30:54-- http://localhost/
Resolving localhost (localhost)... 127.0.0.1
Connecting to localhost (localhost)|127.0.0.1|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 12 [text/html]
Saving to: âindex.html.3â
100%[======================================>] 12 --.-K/s in 0s
2016-03-23 21:30:54 (295 KB/s) - âindex.html.3â saved [12/12]
If I wget the ‘aqua’ subfolder where the wordpress is installed
wget localhost/aqua
--2016-03-23 21:32:28-- http://localhost/aqua
Resolving localhost (localhost)... 127.0.0.1
Connecting to localhost (localhost)|127.0.0.1|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://localhost/aqua/ [following]
--2016-03-23 21:32:28-- http://localhost/aqua/
Reusing existing connection to localhost:80.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://localhost:8080/aqua/ [following]
--2016-03-23 21:32:28-- http://localhost:8080/aqua/
Connecting to localhost (localhost)|127.0.0.1|:8080... failed: Connection refused.
Resolving localhost (localhost)... 127.0.0.1
Connecting to localhost (localhost)|127.0.0.1|:8080... failed: Connection refused.
I get redirected to port 8080.
both of these wget’s are on the guest ubuntu machine.
Could this be a symptom of my Vagrantfile?
# -*- mode: ruby -*-
# vi: set ft=ruby :
# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure(2) do |config|
# The most common configuration options are documented and commented below.
# For a complete reference, please see the online documentation at
# https://docs.vagrantup.com.
# Every Vagrant development environment requires a box. You can search for
# boxes at https://atlas.hashicorp.com/search.
config.vm.box = "ubuntu/trusty64"
# Disable automatic box update checking. If you disable this, then
# boxes will only be checked for updates when the user runs
# `vagrant box outdated`. This is not recommended.
# config.vm.box_check_update = false
# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine. In the example below,
# accessing "localhost:8080" will access port 80 on the guest machine.
config.vm.network "forwarded_port", guest: 80, host: 8080
# Create a private network, which allows host-only access to the machine
# using a specific IP.
# config.vm.network "private_network", ip: "192.168.33.10"
# Create a public network, which generally matched to bridged network.
# Bridged networks make the machine appear as another physical device on
# your network.
# config.vm.network "public_network"
# Share an additional folder to the guest VM. The first argument is
# the path on the host to the actual folder. The second argument is
# the path on the guest to mount the folder. And the optional third
# argument is a set of non-required options.
# config.vm.synced_folder "../data", "/vagrant_data"
# Provider-specific configuration so you can fine-tune various
# backing providers for Vagrant. These expose provider-specific options.
# Example for VirtualBox:
#
# config.vm.provider "virtualbox" do |vb|
# # Display the VirtualBox GUI when booting the machine
# vb.gui = true
#
# # Customize the amount of memory on the VM:
# vb.memory = "1024"
# end
#
# View the documentation for the provider you are using for more
# information on available options.
# Define a Vagrant Push strategy for pushing to Atlas. Other push strategies
# such as FTP and Heroku are also available. See the documentation at
# https://docs.vagrantup.com/v2/push/atlas.html for more information.
# config.push.define "atlas" do |push|
# push.app = "YOUR_ATLAS_USERNAME/YOUR_APPLICATION_NAME"
# end
# Enable provisioning with a shell script. Additional provisioners such as
# Puppet, Chef, Ansible, Salt, and Docker are also available. Please see the
# documentation for more information about their specific syntax and use.
# config.vm.provision "shell", inline: <<-SHELL
# sudo apt-get update
# sudo apt-get install -y apache2
# SHELL
end
I can’t see anything there that would cause a redirect on the guest machine.
Wordpress is causing a redirect on the guest machine but I’m still able to see the site on the host machine.
In my experience this is due to wordpress and its rewrite rules and wp_config DB table. The
site_url
andhome
rows probably have the port specified in them, which is causing this unexpected behaviour.