我正在使用 Grunt 的 BrowserSync 任务,该任务将我的本地项目启动到 url“localhost:3000”。
这个效果很好。但是,当我在智能手机中使用外部网址(http://192.168.1.129:3000)时,我的 Android 浏览器 Chrome 出现以下错误:
ERR_ADDRESS_UNREACHABLE
我不明白这个问题。你可以在这里看到我的 Gruntfile.js:
//Gruntfile.js
module.exports = function (grunt) {
grunt.initConfig({
//Watch task config
watch: {
},
//BrowserSync
browserSync: {
default_options: {
bsFiles: {
src: [
"css/*.css",
"js/*.js",
"*.html"
]
},
options: {
watchTask: true,
proxy: "tutorialmaterialize.dev"
}
}
}
});
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-browser-sync');
//Default task
grunt.registerTask('default', ['browserSync', 'watch']);
};
我该如何解决这个问题?非常感谢。
您的 IP 以 192.168 开头,这意味着这是一个私有网络。
只有专用网络上的设备才能访问。
您的手机需要处于同一网络。
您可以通过检查手机 IP 的前 3 位数字来进行检查 - 前 3 位数字必须相同 - 如果它们以 192.168.1.NUMBER 开头,则位于同一网络。如果不是,那么它位于不同的网络上,您需要将它们置于同一网络上。
如果它们已经位于同一网络上,请确保防火墙、路由器防火墙和您正在访问的计算机上运行的防火墙的端口 3000 已打开。
我在 Ubuntu 18.04 上使用 Chrome 时遇到了这个问题;我通过安装防火墙管理器(防火墙配置)并释放 8080 端口来解决。在您的情况下,端口为 3000,但过程是相同的。
如果你的服务器端口是3000 并通过以下方式在 cmd 中检查您的 IP:
> ipconfig
ip4 : 192.168.11 than add it in mobile and on the desktop way view
example
在您的手机 Chrome 上 http://192.168.1.11:3000/