我在Windows 10主机上运行了一个Ubuntu 14 VM。
我已经安装了nginx并使用
config.vm.network "forwarded_port", guest: 80, host: 8080
在我的Vagrantfile中,当我访问
时,我可以看到默认的nginx页面127.0.0.1:8080在主机上的浏览器中。
通过这项工作,我在一个文件夹中安装了wordpress,以便它显示为 http://127.0.0.1:8080/aqua/
同样有效,wordpress网站在Windows 10的http://127.0.0.1:8080/aqua/地址中可见
但我的虚拟机中发生了一件奇怪的事情。我可以毫无问题地找到服务器的根目录。
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]
如果我想要' aqua'安装wordpress的子文件夹
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.
我被重定向到8080端口。 这两个wget都在客户的ubuntu机器上。
这可能是我的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
我无法看到任何可能导致客户机重定向的内容。 Wordpress导致客户机重定向,但我仍然可以在主机上看到该网站。
答案 0 :(得分:2)
根据我的经验,这是由于wordpress及其重写规则和wp_config数据库表。 site_url
和home
行可能在其中指定了端口,这会导致此意外行为。