内网外网超连接的问题
我的网站访问地址:局域网:10.0.0.8 外网访问地址:www.xxx.com
在网页中设置ABCDE的超链为 <a href="\a.html">ABCDE</a>
如果在局域网中:等效于:<a href="10.0.0.8/a.html">ABCDE</a>
如果在外网中 :等效于:<a href="www.xxx.com/a.html">ABCDE</a>
问题是有一个特殊的连接
在局域网中 :10.0.0.8:81/b.html
在外网中 : www.xxx.com:81/a.html 我要如何写代码
[解决办法]
都写相对路径,打开链接时,浏览器会自动添加相应的服务器路径
比如
<a href="a.html">A</a>
在外网我用http://www.xxx.com:81 访问,点击链接时,会自动打开 www.xxx.com:81/a.html
在内网用IP访问,点击链接时,自动打开 http://10.0.0.8:81/a.html
如果跨域的话上面这样就不行了,(地址不一样或端口不一样,一般都是跨域)
[解决办法]
更改下
<script>
var host=location.host;//主机头
var inet=host.toLowerCase().indexOf('xxx.com')!=-1//外网////////
document.write('<a href="http://'+host+':81/'+(inet?'a':'b')+'.html">ABCDEFG</a>');
</script>