按照《开发环境搭建 - Windows》搭建的开发环境,但是 homestead.test 无法访问

按照《开发环境搭建 - Windows》搭建的开发环境。

1,主机 ping 不通虚拟机,虚拟机能够 ping 通主机,但是 homestead.test 能够识别 192.168.10.10 的 ip,这主机的映射是可以的。
主机ping不通虚拟机
2,[> vagrant ssh] 命令能够进入到虚拟机中,虚拟机中用 [$ curl localhost] 命令能够获取到返回值,说明在虚拟机中服务是运行的。
虚拟机可以正常访问
3,在主机的网络连接中出现很多个【VirtualBox Host-Only Network】,每次运行 [> vagrant up] 命令后就会多出一个,这个是不是正常现象不太清楚,感觉这里不太对。
主机的网络连接出现很多个VirtualBox Host-Only Network
试着把虚拟机的连接方式改为桥接,但是 [> vagrant up]命令执行后出现错误,无法启动虚拟机?

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

搞了一整天,问题终于解决了,感谢楼主给的灵感。 楼主说,换了台Windows10的机器就可以正常使用了。于是,我就把我的旧笔记本翻出来,按照文档搭建开发环境,最终访问homestead.test成功。然后,我进入到旧笔记本的控制面板,找到 【网络和Internet】/【网络连接】,发现有两个 VirtualBox Host-Only Network,挨个点击去查看IP地址,发现VirtualBox Host-Only Network #2的IP地址为 192.168.10.1,正好跟我在Homestead.yaml配置文件中设置的地址192.168.10.10同网段。

file 于是,我回到台式机上,修改VirtualBox Host-Only Network #2的ip地址为192.168.10.1,结果系统提示我,该地址被VMware Network Adapter VMnet1占用,这时候我才意识到,我装了VMware,VMware和VirtualBox冲突了,所以才会出现这种问题。然后回到楼主这里,看到楼主发的图片中显示,楼主和我一样,也装了VMware,这就证实了我的猜想。 然后,我就把VMware Network Adapter VMnet1的ip地址改成192.168.10.2(为什么不删除呢?因为thinkphp框架要用到),把VirtualBox Host-Only Network #2的ip地址改成192.168.10.1,在次尝试访问http://homestead.test/,成功显示。 总结:在搭建开发环境之前,把wmware删掉,或者修改VirtualBox Host-Only Network #2的ip地址为192.168.10.1。

4年前 评论
讨论数量: 5

file

主机的网络设置中子网掩码和虚拟机的不同这个有影响么?

4年前 评论

最终没有解决这个问题,我的系统是windows7 旗舰版(6.1.7601.24545)主机ping不通的虚拟机,换了一台windows10的机器可以正常使用了。

4年前 评论

我也遇到了同样的问题,不过我的是Windows10 家庭版1909,一直都没有找到解决方法

4年前 评论

搞了一整天,问题终于解决了,感谢楼主给的灵感。 楼主说,换了台Windows10的机器就可以正常使用了。于是,我就把我的旧笔记本翻出来,按照文档搭建开发环境,最终访问homestead.test成功。然后,我进入到旧笔记本的控制面板,找到 【网络和Internet】/【网络连接】,发现有两个 VirtualBox Host-Only Network,挨个点击去查看IP地址,发现VirtualBox Host-Only Network #2的IP地址为 192.168.10.1,正好跟我在Homestead.yaml配置文件中设置的地址192.168.10.10同网段。

file 于是,我回到台式机上,修改VirtualBox Host-Only Network #2的ip地址为192.168.10.1,结果系统提示我,该地址被VMware Network Adapter VMnet1占用,这时候我才意识到,我装了VMware,VMware和VirtualBox冲突了,所以才会出现这种问题。然后回到楼主这里,看到楼主发的图片中显示,楼主和我一样,也装了VMware,这就证实了我的猜想。 然后,我就把VMware Network Adapter VMnet1的ip地址改成192.168.10.2(为什么不删除呢?因为thinkphp框架要用到),把VirtualBox Host-Only Network #2的ip地址改成192.168.10.1,在次尝试访问http://homestead.test/,成功显示。 总结:在搭建开发环境之前,把wmware删掉,或者修改VirtualBox Host-Only Network #2的ip地址为192.168.10.1。

4年前 评论

请问一下我是可以 ping 通域名,但是无法访问 file host 以及 yarm 如下

file

file vagrant up --provision 之后 访问浏览器访问 shop.test 失败

file

接着继续访问 ip 看下 192.168.10.10

file 那就说明是 homestead 虚拟机的原因了 然后看了下 code 目录是否映射到虚拟机去了,发现在

file 然后看了下 nginx.conf 反正我是没辙了

vagrant@homestead:/etc/nginx$ cat nginx.conf
user vagrant;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;

events {
        worker_connections 768;
        # multi_accept on;
}

http {

        ##
        # Basic Settings
        ##

        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 65;
        types_hash_max_size 2048;
        # server_tokens off;

        server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

        include /etc/nginx/mime.types;
        default_type application/octet-stream;

        ##
        # SSL Settings
        ##

        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
        ssl_prefer_server_ciphers on;

        ##
        # Logging Settings
        ##

        access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        ##
        # Gzip Settings
        ##

        gzip on;

        # gzip_vary on;
        # gzip_proxied any;
        # gzip_comp_level 6;
        # gzip_buffers 16 8k;
        # gzip_http_version 1.1;
        # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

        ##
        # Virtual Host Configs
        ##

        include /etc/nginx/conf.d/*.conf;
        include /etc/nginx/sites-enabled/*;
}

然后接着看了几个引入的文件 include /etc/nginx/modules-enabled/*.conf, include /etc/nginx/conf.d/*.conf, include /etc/nginx/sites-enabled/*

  1. 看着不像我找到的 file

  2. 是空的 file

  3. 找到相关配置 了,但是我不知道那里有问题,贴一下给大家看下

    vagrant@homestead:/etc/nginx$ cat sites-enabled/shop.test
    conf.d/            koi-utf            modules-available/ proxy_params       sites-enabled/     win-utf
    fastcgi.conf       koi-win            modules-enabled/   scgi_params        snippets/
    fastcgi_params     mime.types         nginx.conf         sites-available/   uwsgi_params
    vagrant@homestead:/etc/nginx$ cat sites-enabled/shop.test
    server {
     listen 80;
     listen 443 ssl http2;
     server_name .shop.test;
     root "/home/vagrant/code/laravel-shop/public";
    
     index index.html index.htm index.php;
    
     charset utf-8;
     location / {
         try_files $uri $uri/ /index.php?$query_string;
    
     }
    
    
    
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt  { access_log off; log_not_found off; }

access_log off;
error_log  /var/log/nginx/shop.test-error.log error;

sendfile off;

location ~ \.php$ {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php/php8.0-fpm.sock;
    fastcgi_index index.php;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;


    fastcgi_intercept_errors off;
    fastcgi_buffer_size 16k;
    fastcgi_buffers 4 16k;
    fastcgi_connect_timeout 300;
    fastcgi_send_timeout 300;
    fastcgi_read_timeout 300;
}

location ~ /\.ht {
    deny all;
}

ssl_certificate     /etc/ssl/certs/shop.test.crt;
ssl_certificate_key /etc/ssl/certs/shop.test.key;

} ```

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!