在SYGATE里面的ACCESS RULE来设置就可以了。设置方法如下: 比如你的拨号机器为192.168.0.1, WEB服务器在192.168.0.10。 那么设置方法就是在菜单tools ->access rules里面点add ->import a rule from system -> 在下拉框种选择our web server, 然后用“detail”,看到的 direction :in, client 192.168.0.10, destport:80。
以架设web server为例: 1. 开启GateKeeper,在左面点击WWW Proxy Service,按鼠标右键,进入WWW Proxy Service的属性页,在General页中将Service端口设置发布Web所使用的端口,一般为80,这样Wingate开放了一个80端口的HTTP代理服务。 2. 进入Bindings页,选择第一个选项即Allow Connections coming in on any internet connections。 3. 重要的是在Non-Proxy Requests页,默认是选择了Reject Request,把它改为Pipe request through to predetermined。在下面Server和Port栏中,填局域网中内部提供Web服务的机器的IP地址和端口(比如192.168.0.10,80)。 这样,Wingate就将外部对80端口的HTTP请求转发到局域网中IP地址为192.168.0.10这台电脑的80端口去。只要192.168.0.80电脑的IIS正确设置了80端口的Web服务,就能被局域网外部访问到。 4. 确定并保存。
function reportError(msg,url,line) { var str = "You have found an error as below: \n\n"; str += "Err: " + msg + " on line: " + line; alert(str); return true; }
window.onerror = reportError;
document.onkeydown = function() { if(event.ctrlKey){ switch(event.keyCode) { case 82: //r runcode(); break; case 83: //s savecode(); break; case 71: //g goto(prompt('Please input the line number', '1')); break; case 65: //a document.execCommand("SelectAll"); break; case 67: //c document.execCommand("Copy"); break; case 88: //x document.execCommand("Cut"); break; case 86: //v document.execCommand("Paste"); break; case 90: //z document.execCommand("Undo"); break; case 89: //y document.execCommand("Redo"); break; default: break; } event.keyCode = 0; event.returnValue = false; } return; }
function show_ln(){ var txt_ln = document.getElementById('txt_ln'); var txt_main = document.getElementById('txt_main'); txt_ln.scrollTop = txt_main.scrollTop; while(txt_ln.scrollTop != txt_main.scrollTop) { txt_ln.value += (i++) + '\n'; txt_ln.scrollTop = txt_main.scrollTop; } return; }
function editTab(){ var code, sel, tmp, r; event.returnValue = false; sel =event.srcElement.document.selection.createRange(); r = event.srcElement.createTextRange();
function runcode() { var str = document.getElementById("txt_main").value; var code_win = window.open('about:blank'); code_win.document.open(); code_win.document.writeln("<script>"); code_win.document.writeln("function reportError(msg,url,line){\nline-=14;\nvar str='You have found an error as below: \\n\\n';\nstr+='Err: '+msg+' on line: '+(line);\nalert(str);\nopener.goto(line);\nopener.focus();\nwindow.onerror=null;\nsetTimeout('self.close()',10);\nreturn true;\n}"); code_win.document.writeln("window.onerror = reportError;"); code_win.document.writeln("<\/script>"); code_win.document.writeln(str); code_win.document.close(); return; }
function savecode() { var str = document.getElementById("txt_main").value; var code_win = window.open('about:blank','_blank','top=10000'); code_win.document.open(); code_win.document.writeln(str); code_win.document.close(); code_win.document.execCommand('saveas','','code.html'); code_win.close(); return; }
LwgTable.prototype.getObj=function(){ var tdobj=document.selection.createRange().parentElement(); if (!tdobj || tdobj.tagName != "TD")return false; var trobj=tdobj.parentElement; if (!trobj || trobj.tagName != "TR")return false; var tblobj=trobj.parentElement.parentElement; if (!tblobj || tblobj.tagName != "TABLE")return false; this.tdobj=tdobj; this.trobj=trobj; this.tblobj=tblobj; return true; }
LwgTable.prototype.setxy=function(){ for (var i=0;i<this.tblobj.rows.length;i++) this.xy[i]=new Array();
for (var i=0;i<this.tblobj.rows.length;i++){ var tmp_row=this.tblobj.rows[i]; var tmp_y=0; for (var n=0;n<tmp_row.cells.length;n++){ var tmp_cell=tmp_row.cells[n]; if (this.tdobj==tmp_cell){ this.x=i; tmp_y=this.y=this.findy(i,tmp_y); } for (var c=0;c<tmp_cell.colSpan;c++){ for (var r=0;r<tmp_cell.rowSpan;r++){ var tmp_ir=i+r; var tmp_y=this.findy(tmp_ir,tmp_y); if (c==0 && r==0) var tmp_obj=new tmpObj(i,tmp_y,tmp_cell); this.xy[tmp_ir][tmp_y]=tmp_obj; } } tmp_y++; } } }
LwgTable.prototype.findy=function(x,y){ if (!this.xy[x][y])return y; else return this.findy(x,y+1); }
LwgTable.prototype.mergeCell = function (what){ switch (what){ case "up": var tmp_obj=this.checkToMerge(-1,0); if (!tmp_obj)return false; if (this.tdobj.innerHTML != " ")tmp_obj.obj.innerHTML+=this.tdobj.innerHTML; tmp_obj.obj.rowSpan+=this.dropCell(this.trobj.rowIndex,this.tdobj.cellIndex,'r'); break; case "down": var tmp_obj=this.checkToMerge(this.tdobj.rowSpan,0); if (!tmp_obj)return false; if (tmp_obj.obj.innerHTML != " ")this.tdobj.innerHTML+=tmp_obj.obj.innerHTML; this.tdobj.rowSpan+=this.dropCell(this.trobj.rowIndex+this.tdobj.rowSpan,tmp_obj.obj.cellIndex,'r'); break; case "left": var tmp_obj=this.checkToMerge(0,-1); if (!tmp_obj)return false; if (this.tdobj.innerHTML != " ")tmp_obj.obj.innerHTML+=this.tdobj.innerHTML; tmp_obj.obj.colSpan+=this.dropCell(this.trobj.rowIndex,this.tdobj.cellIndex,'c'); break; case "right": var tmp_obj=this.checkToMerge(0,this.tdobj.colSpan); if (!tmp_obj)return false; if (tmp_obj.obj.innerHTML != " ")this.tdobj.innerHTML+=tmp_obj.obj.innerHTML; this.tdobj.colSpan+=this.dropCell(this.trobj.rowIndex,this.tdobj.cellIndex+1,'c'); break; default : break; } }
LwgTable.prototype.checkToMerge = function (x,y){ if (!this.xy[this.x+x])return false; var tmp_obj=this.xy[this.x+x][this.y+y]; if (!tmp_obj)return false; if (x!=0){ if (tmp_obj.y!=this.y || tmp_obj.obj.colSpan!=this.tdobj.colSpan)return false; } else if (y != 0){ if (tmp_obj.x!=this.x || tmp_obj.obj.rowSpan!=this.tdobj.rowSpan)return false; } return tmp_obj; }
LwgTable.prototype.dropCell=function (x,y,kind){ var trobj=this.tblobj.rows[x]; if (!trobj)return false; var rowspans=trobj.cells[y].rowSpan; var colspans=trobj.cells[y].colSpan; trobj.deleteCell(y); if (kind=="r")return rowspans; else if (kind=="c")return colspans; }
LwgTable.prototype.changeRowspan = function (x,num){ var y=0; while (y<this.xy[x].length){ var tmp=this.xy[x][y]; if (tmp.obj.rowSpan > 1){ tmp.obj.rowSpan+=num; } y+=tmp.obj.colSpan; } }
LwgTable.prototype.insertRow = function (what,num){ var x = this.x; var x1 = (what=='up') ? x : (x + 1); if (x1==this.tblobj.rows.length){ for (var n=0;n<num;n++){ var newRow=this.tblobj.insertRow(x1); var lastxy=this.xy[this.xy.length-1]; var i=0; while (i<lastxy.length){ var newCell=newRow.insertCell(); newCell.innerHTML=" "; newCell.mergeAttributes(lastxy[i].obj); newCell.rowSpan=1 i+=lastxy[i].obj.colSpan; } } return true; } for (var n=0;n<num;n++){ var trobj=this.tblobj.rows[x]; var newRow=this.tblobj.insertRow(x1); var delcell=new Array(); for(var i=0;i<trobj.cells.length;i++){ if (trobj.cells[i].rowSpan==1){ var newCell=newRow.insertCell(); newCell.innerHTML=" "; newCell.mergeAttributes(trobj.cells[i]) } else if (what=='up'){ var newCell=newRow.insertCell(); trobj.cells[i].rowSpan+=1; newCell.innerHTML=trobj.cells[i].innerHTML; delcell[i]=1; newCell.mergeAttributes(trobj.cells[i]) } } var deli=0; for (i in delcell){ trobj.deleteCell(i-deli); deli++; } } this.changeRowspan(this.x,num); }
LwgTable.prototype.deleteRow = function (){ if (this.trobj.rowIndex==this.tblobj.rows.length-1){ this.tblobj.deleteRow(this.trobj.rowIndex); return true; } var y=0; while (y<this.xy[this.x].length){ var tmp_obj=this.xy[this.x][y].obj; if (tmp_obj.rowSpan > 1){ tmp_obj.rowSpan-=1; if (tmp_obj.parentElement.rowIndex == this.x){ if (tmp_obj.cellIndex<this.trobj.cells.length-1)var cellIndex=this.xy[this.x+1][y+tmp_obj.colSpan].obj.cellIndex; else var cellIndex=this.tblobj.rows[this.x+1].cells.length; newCell=this.tblobj.rows[this.x+1].insertCell(cellIndex) newCell.replaceNode(tmp_obj); } } y+=tmp_obj.colSpan; } this.tblobj.deleteRow(this.trobj.rowIndex); }
LwgTable.prototype.deleteCol = function (){ var x=0; while (x<this.xy.length){ var tmp_obj=this.xy[x][this.y].obj; x+=tmp_obj.rowSpan if (tmp_obj.colSpan==1){ tmp_obj.parentElement.deleteCell(tmp_obj.cellIndex); } else tmp_obj.colSpan-=1; } }
LwgTable.prototype.insertCol = function (what,num){ var x=0; while (x<this.xy.length){ var tmp_obj=this.xy[x][this.y].obj; x+=tmp_obj.rowSpan if (tmp_obj.colSpan==1){ var cellIndex=(what=="right")?(tmp_obj.cellIndex+1):tmp_obj.cellIndex; for (var n=0;n<num;n++){ var newCell=tmp_obj.parentElement.insertCell(cellIndex); newCell.innerHTML=" "; newCell.mergeAttributes(tmp_obj) } } else tmp_obj.colSpan+=num; } }
LwgTable.prototype.rowSplit = function (num){ if (num<2)return false; while (num>1){ var y=0; var tmp_x=this.x+this.tdobj.rowSpan-1; var tmp_index=0; while (y<this.xy[tmp_x].length){ var tmp_obj=this.xy[tmp_x][y] if(this.tdobj.rowSpan>1){ if (tmp_obj.obj==this.tdobj){ var newCell=this.tblobj.rows[tmp_x].insertCell(tmp_index); newCell.innerHTML=" "; newCell.mergeAttributes(this.tdobj) newCell.rowSpan=1 } if (tmp_x==tmp_obj.x)tmp_index++; } else { if (tmp_obj.obj==this.tdobj){ var newRow=this.tblobj.insertRow(this.x+1); var newCell=newRow.insertCell(0); newCell.innerHTML=" "; } else tmp_obj.obj.rowSpan+=1; } y+=tmp_obj.obj.colSpan; } if(this.tdobj.rowSpan>1)this.tdobj.rowSpan-=1 num-=1 } }
LwgTable.prototype.colSplit = function (num){ var x=0; while (x<this.xy.length){ var tmp_obj=this.xy[x][this.y].obj; x+=tmp_obj.rowSpan if (tmp_obj==this.tdobj){ for (var n=0;n<num;n++){ var newCell=tmp_obj.parentElement.insertCell(this.tdobj.cellIndex); newCell.innerHTML=" "; newCell.mergeAttributes(tmp_obj) } } else tmp_obj.colSpan+=num; } }
function table_change(){ var t=new LwgTable(); if (!t.getObj())return false; t.setxy(); var args=table_change.arguments; switch (args[0]){ case "insertrow_up": t.insertRow('up',args[1]) break case "insertrow_down": t.insertRow('down',args[1]) break case "deleterow": t.deleteRow() break case "deletecol": t.deleteCol() break case "insertcol_left": t.insertCol('left',args[1]) break case "insertcol_right": t.insertCol('right',args[1]) break case "rowsplit": t.rowSplit(args[1]) break case "colsplit": t.colSplit(args[1]) break case "merge": t.mergeCell(args[1]); break default: break; } }
示例:搜索包含布兰妮“Britney”或者披头士“Beatles”、或者两者均有的中文网页。 搜索:“britney OR beatles” 结果:已搜索有关britney OR beatles的中文(简体)网页。共约有14,600项查询结果,这是第1-10项。搜索用时0.08秒。 搜索:“布兰妮 OR 披头士” 结果:找不到和您的查询-布兰妮 OR 披头士-相符的网页。
示例:搜索包含“Who am I ?”的网页。如果用“"who am i ?"”,“Who”、“I”、“?”会被省略掉,搜索将只用“am”作关键字,所以应该用强制搜索。 搜索:“"+who +am +i"” 结果:已向英特网搜索"+who +am +i". 共约有362,000项查询结果,这是第1-10项。搜索用时0.30秒。
输入“http://groups.google.com/”后,便进入GOOGLE新闻组界面。可惜现在还没有中文界面。因为新闻组中的帖子实在是多,所以我点击“Advaced Groups Search”进入高级搜索界面http://groups.google.com/advanced_group_search。新闻组高级搜索界面提供对关键字、新闻组、主题、作者、帖子序号、语言和发布日期的条件搜索。其中作者项指作者发帖所用的唯一识别号电子信箱。比如要在alt.chinese.text内搜索著名老牌网络写手图雅的帖子,可以用下列指令“group:alt.chinese.text author:tuya@ccmail.uoregon.edu”。不过一般而言,我更推荐使用图形搜索界面,方便而且直观。
不过,目前只能在英文状态GOOGLE下实现这个功能。进入GOOGLE的设置页面,http://www.google.com/preferences,有一个“BETA: Enable translation of search results into your interface language. ”的选项,把它选中,就OK了。
[PDF] www.usi.net/pdf/outsoucing-ecommerce.pdf Outsourcing Electronic Commerce Business Case White Paper By: John P. Sahlin, Product Marketing Professonial (PMP) Implementation Manager, Web Engineering ... 一般文字档 - 类似网页
分析一:提供MP3的网站,通常会建立一个叫做MP3的目录,目录底下分门别类的存放各种MP3乐曲。所以,可以用INURL语法迅速找到这类目录。现在用这个办法找找老歌“say you say me”。 搜索:“"say you say me" inurl:mp3” 结果:已向英特网搜索inurl:mp3 "say you say me". 共约有155项查询结果,这是第1-10项。搜索用时0.17秒。
分析二:也可以通过网页标题,找到这类提供MP3的网页。 搜索:“"say you say me" intitle:mp3” 结果:已向英特网搜索"say you say me" intitle:mp3. 共约有178项查询结果,这是第1-10项。搜索用时0.73秒。