我在OSX10.10的MacMini上配好了Jenkins,访问http://localhost:8080可以正常访问。
但是,局域网内的其他机器无法通过http://该机IP:8080的方式访问。 请问是OSX的防火墙造成的吗?应该怎样配置才行。
默认防火墙应该不管这个
你在本机,可以用http://该机IP:8080的方式访问么?localhost指向的是127.0.0.1,也有可能你只监听了127.0.0.1的8080
我搞了个OS X Server 装上了,打开它的【服务】中的【网站】,从别的机器上用http://该机IP 是可以访问的。 感觉还是防火墙的配置的问题。
真是不会分析问题……都试验出来本机不能访问了,就说明肯定是Jenkins的问题嘛,还扯防火墙
http://www.weibo.com/1623064627/Cqm31EddH?ref=atme&rid=1_0_0_2667313572880924227
Jenkins 的系统设置里面有个 Jenkins Location,里面的 Jnekins URL 要改成 局域网IP+端口。
此答案也离谱,Jenkins Location主要是发通知邮件用的:
Optionally specify the HTTP address of the Jenkins installation, such as http://yourhost.yourdomain/jenkins/. This value is used to let Jenkins know how to refer to itself, ie. to display images or to create links in emails. This is necessary because Jenkins cannot reliably detect such a URL from within itself.
要是在linux里我会 netstat -lntp 看看到底在listen哪些IP地址的 8080 端口,但是Mac上的netstat不一样,我还真没用过……Jenkins 有个选项是 --httpListenAddress 不过它默认是0.0.0.0,不知道楼主的安装配置方式是不是把它弄称了127.0.0.1
5楼 @yangtzeyankee 我是用brew安装Jenkins的,--httpListenAddress倒是没配置过。
暂时把Jenkins又找了台Linux配上了,访问倒是没有问题,回头再研究吧。
果然 @tinyfool 说的是对的,brew安装的默认就是127.0.0.1:
Jenkins not accessible through LAN
Updating Homebrew’s “httpListenAddress” Default for Jenkins