Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Hosts switcher na Windowsie
Forum PHP.pl > Inne > Hydepark
pitu
Cześć

Może ktoś polecić jakiś program do szybkiej podmiany hosts. W sieci jest masa i szczerze nie chcę testować każdego po kolei jak ktoś może napisać używam XYZ. wink.gif
by_ikar
Jakbyś używał vagranta, to hostmanager przy każdym up/halt wrzuca/kasuje wpisy z hosts. Jeżeli korzystasz z jakiegoś WAMP'a, to polecam easyPHP tam był jakiś plugin (vhosts manager). Tyle że w php samemu można to dość łatwo napisać..
pitu
Korzystam z Vagranta, piszesz o tym pluginie? https://github.com/smdahlen/vagrant-hostmanager

Jutro się pobawię bo na szybko to nie działał coś.
by_ikar
Tak piszę o tym, jest łatwy w konfiguracji, pokażę ci mój przykładowy plik Vagrantfile:

Kod
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "ubuntu/trusty64"
  config.vm.hostname = "app.dev"

  config.vm.network :private_network, ip: "192.168.56.102"

  config.vm.provider "virtualbox" do |vb|
    vb.customize ["modifyvm", :id, "--memory", "1024"]
    vb.customize ["modifyvm", :id, "--cpus", "4"]
    vb.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
    vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
  end

  config.vm.synced_folder "project", "/home/vagrant/project", type: "nfs", create: true

  config.vm.network "forwarded_port", guest: 80, host: 8000
  config.vm.network "forwarded_port", guest: 3306, host: 33060
  config.vm.network "forwarded_port", guest: 5432, host: 54320
  config.vm.network "forwarded_port", guest: 35729, host: 35729

  if Vagrant.has_plugin?('vagrant-hostmanager')
    config.hostmanager.enabled = true
    config.hostmanager.manage_host = true
    config.hostmanager.ignore_private_ip = false
    config.hostmanager.include_offline = false
    #config.hostmanager.aliases = %w(test.dev, second.dev)
  end
  
  config.vm.provision "shell" do |s|
    s.path = "./scripts/provision.sh"
  end
end


Więc tak, ten kawałek:

Kod
  if Vagrant.has_plugin?('vagrant-hostmanager')
    config.hostmanager.enabled = true
    config.hostmanager.manage_host = true
    config.hostmanager.ignore_private_ip = false
    config.hostmanager.include_offline = false
    #config.hostmanager.aliases = %w(test.dev, second.dev)
  end


Odpowiada za sprawdzenie czy dany plugin jest zainstalowany i jeżeli tak to go odpala. Zakomentowana linijka z aliasami, służy do podania tablicy z hostami które chcesz dodatkowo wrzucić do pliku hosts. Dodatkowo dlatego że, przedewszystkim brany pod uwagę jest :

Kod
config.vm.hostname = "app.dev"


Jeżeli jest pusty, albo nie podany, to wtedy ten plugin dorzuci do pliku hosts, host o nazwie "default". Więc jeżeli chcesz mieć tylko jeden host, to wystarczy wypełnić hostname w konfiguracji vm, a linijkę z aliasami pominąć, lub zakomentować.

Pamiętaj, że ten plugin aktualizuje wpisy w hosts tylko przy vagrant up i vagrant destroy, jeżeli dodałeś nowy wpis, a nie chcesz resetować całego VM'a, to użyj komendy vagrant hostmanager. Dodatkowo polecam ci zainteresować się jeszcze pluginem vagrant-winnfsd i współdzieleniu folderów poprzez nfs, które jest z 3x szybsze od virtual box'owego systemu plików.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.