Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将Laravel Homestead服务器设置为在本地运行,而无需网络/互联网?_Laravel_Nginx_Vagrant_Offline_Homestead - Fatal编程技术网

如何将Laravel Homestead服务器设置为在本地运行,而无需网络/互联网?

如何将Laravel Homestead服务器设置为在本地运行,而无需网络/互联网?,laravel,nginx,vagrant,offline,homestead,Laravel,Nginx,Vagrant,Offline,Homestead,以前,我在VirtualBox上手动设置了自己的虚拟机,并对其进行了配置,使其在脱机编码时也能正常工作(没有互联网/没有连接到路由器)。我在虚拟机上使用VirtualBox GUI和Apache中的设置完成了这项工作 现在我对学习nginx很感兴趣,我决定尝试使用Laravel的家园。我正在看的教程似乎假设我将通过网络访问Homestead VM(当然,即使它在同一台PC上)。当我离线时(比如在飞机或火车上编码时),我需要做什么来确保VM可以访问?我希望无论何时回到WiFi(即apt get等)

以前,我在VirtualBox上手动设置了自己的虚拟机,并对其进行了配置,使其在脱机编码时也能正常工作(没有互联网/没有连接到路由器)。我在虚拟机上使用VirtualBox GUI和Apache中的设置完成了这项工作

现在我对学习nginx很感兴趣,我决定尝试使用Laravel的家园。我正在看的教程似乎假设我将通过网络访问Homestead VM(当然,即使它在同一台PC上)。当我离线时(比如在飞机或火车上编码时),我需要做什么来确保VM可以访问?我希望无论何时回到WiFi(即apt get等),仍然能够从VM访问互联网


(注意:我的主机运行的是64位Windows 7)

当您脱机时,可以访问您开发机器上运行的任何VM。只需确保将开发机器的主机文件设置为设置VM的位置即可

如果您遵循以下步骤:

scripts/homestad.rb
中,您将有一行包含VM的IP地址

# in scripts/homestead.rb

# Configure A Private Network IP
config.vm.network :private_network, ip: settings["ip"] ||= "192.168.10.10"
将此IP地址添加到您的
主机
文件中。这通常位于
C:\Windows\System32\drivers\etc\hosts

#in hosts file
192.168.10.10  yourwebsite.dev
  • 下载并安装Vagrant和Virtualbox的新副本
  • 也可以手动下载laravel/homestead
  • 到我的下载文件夹C:\downloads\homestad-0-2-2.box

  • 安装Virtualbox和Vagrant后。通过在git bash中运行以下命令安装了laravel/homestead(您可以在此处下载git bash:)

    流浪者箱添加laravel/homestad/c/downloads/homestad-0-2-2.box

  • 在C:\users\yourusername中运行此命令

    吉特克隆家园酒店

  • 注意:这将创建以下文件夹:
    C:\Users\yourusername\homestad

    有一些文件

  • 仍然在Git bash中,将cd放入
    C:\Users\yourusername\homestad
    并运行以下命令:

    bash init.sh

  • 注意:这将创建一个文件夹
    C:\Users\yourusername\.homestad
    ,其中包含homestad.yaml和一些其他文件

  • 然后,通过运行以下命令,生成一个SSH密钥,当您想要登录到VM时需要该密钥:

    ssh-keygen-t rsa-C“youremailaddress@youremail.com"

  • 注意:这会问一些问题,只需按enter键或键入yes并按enter键。 这将在
    C:\Users\yourusername\.ssh中创建ssh密钥

  • 然后,您需要通过编辑Nginx

    C:\Users\digitlimit\homestad\homestad.yaml

  • 您可以右键单击Homestead.yaml文件,然后单击“打开”,然后选择使用写字板打开

    My Homestead.yaml在编辑后显示:

    ---
    ip: "192.168.10.10"
    memory: 2048
    cpus: 1
    
    authorize: ~/.ssh/id_rsa.pub
    
    keys:
        - ~/.ssh/id_rsa
    
    folders:
        - map: /wamp/www
          to: /home/vagrant/Code
    
    sites:
        - map: laravel.dev
          to: /home/vagrant/Code/laravel/public
    
    databases:
        - homestead
    
    variables:
        - key: APP_ENV
          value: local
    
    # blackfire:
    #     - id: foo
    #       token: bar
    
    注意:要了解映射是主机和VM之间共享文件夹的过程,请执行以下操作:

    我的laravel项目位于
    C:\wamp\www\laravel

    安装后,此目录
    /home/vagrant/code
    将位于VM内

    所以我告诉VM的是,每当你看到/home/vagrant/Code引用这个文件夹C:\wamp\www\laravel

    在这方面:

    sites:
            - map: laravel.dev
              to: /home/vagrant/Code/laravel/public
    
    我们在这里要说的是,当我进入我的浏览器并键入display内容时,
    /home/vagrant/code/laravel/public
    ,它实际上指向
    C:\www\wamp\laravel\public

    编辑Homestead.yaml文件后,保存您的技术

    注意:在主机web浏览器中查看laravel项目之前,我们需要将以下内容添加到位于中的主机文件中

    C:\Windows\System32\drivers\etc\hosts
    
    将此ip地址添加到列出的其他ip地址列表下(如有):

    192.168.10.10 laravel.dev
    
  • 最后,返回Git bash,确保您处于
    /c/Users/yourusername/homestad
    并键入:

    流浪汉


  • 等待流浪者完成它的过程。当您看到任何对话框请求在您的系统上创建网络适配器的权限时,请单击“是”

    仅因为您未连接到internet并不意味着您没有网络:)VM应该可以脱机工作(在安装和设置之后)。网络指的是我未连接到任何路由器。但是我禁用了我的网络适配器(完全离线),一切都运行了!伙计,你是最棒的