﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-ivaneeo's blog-随笔分类-互联网</title><link>http://www.blogjava.net/ivanwan/category/48073.html</link><description>自由的力量，自由的生活。</description><language>zh-cn</language><lastBuildDate>Mon, 24 Nov 2014 16:05:56 GMT</lastBuildDate><pubDate>Mon, 24 Nov 2014 16:05:56 GMT</pubDate><ttl>60</ttl><item><title>nginx配置支持websocket 2</title><link>http://www.blogjava.net/ivanwan/archive/2014/11/24/420534.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Mon, 24 Nov 2014 13:19:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2014/11/24/420534.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/420534.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2014/11/24/420534.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/420534.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/420534.html</trackback:ping><description><![CDATA[<h2><pre literal-block"="" style="box-sizing: border-box; font-family: Monaco, Menlo, Consolas, 'Courier New', monospace; font-size: 13px; white-space: pre-wrap; padding: 9.5px; margin: 0px 2em 10px; line-height: 1.428571429; color: #333333; word-break: break-all; word-wrap: break-word; border: 1px solid #cccccc; border-radius: 4px; font-weight: normal; background-color: #eeeeee;">location / {     proxy_pass http://127.0.0.1:9999;     proxy_connect_timeout 60;     proxy_set_header Host $host;     proxy_set_header X-Real-IP $remote_addr;     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;     proxy_set_header X-NginX-Proxy true;      # 下面是关键     proxy_http_version 1.1;     proxy_set_header Upgrade $http_upgrade;     proxy_set_header Connection "upgrade";     # 这是配置webpysessoin丢失的问题     fastcgi_param  SCRIPT_NAME        ""; }</pre><div>http://nginx.org/en/docs/http/websocket.html</div></h2><img src ="http://www.blogjava.net/ivanwan/aggbug/420534.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2014-11-24 21:19 <a href="http://www.blogjava.net/ivanwan/archive/2014/11/24/420534.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Canvas里的globalCompositeOperation</title><link>http://www.blogjava.net/ivanwan/archive/2014/03/28/411623.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Fri, 28 Mar 2014 07:48:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2014/03/28/411623.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/411623.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2014/03/28/411623.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/411623.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/411623.html</trackback:ping><description><![CDATA[<strong>Canvas</strong>里的<strong>globalCompositeOperation</strong>是个很少用到的函数,不太熟悉程序绘图的同学们估计压根都不知道这玩意是干什么的.<br /><br />简单来说,<strong>Composite(组合)</strong>,就是对你在绘图中,后绘制的图形与先绘制的图形之间的组合显示效果,比如在国画中,你先画一笔红色,再来一笔绿色,相交的部分是一种混色,而在油画中,绿色就会覆盖掉相交部分的红色,这在程序绘图中的处理就是Composite,Canvas API中对应的函数就是globalCompositeOperation,跟globalAlpha一样,这个属性是全局的,所以在使用的时候要注意save和restore.<br /><br />我在练习这个函数的时候,用的是chrome浏览器,但是测试结果却跟实际应该出现的结果不太一致,开始我以为是写错了,检查数遍却没有问题,疑惑之下换了各种浏览器来测试,真是囧啊,每个浏览器居然都不一样,连同核心的chrome和safari都不一样...下面是测试结果.<br /><br /><img alt="" src="http://dl.iteye.com/upload/picture/pic/71054/9f086ab0-932c-3195-884b-cfc8aa3d8ce4.jpg" /><br /><span style="font-size: large;">chrome</span><br /><br /><img alt="" src="http://dl.iteye.com/upload/picture/pic/71056/bb7bff56-5939-36bb-b325-f82695410862.jpg" /><br /><span style="font-size: large;">firefox</span><br /><br /><img alt="" src="http://dl.iteye.com/upload/picture/pic/71058/9292f201-bb95-30ec-8920-b9836bd20baa.jpg" /><br /><span style="font-size: large;">opera</span><br /><br /><img alt="" src="http://dl.iteye.com/upload/picture/pic/71060/8742ecdb-3f3c-3840-82df-90c846e80f5b.jpg" /><br /><span style="font-size: large;">safari</span><br /><br /><img class="magplus" title="点击查看原始大小图片" alt="" src="http://dl.iteye.com/upload/picture/pic/71062/af2e011f-faa8-3f70-819a-8f445dae60a0.jpg" width="760" height="619" /><br /><span style="font-size: large;">firefox官方网站给的实际效果图</span><br /><br />下面是每一个选项的说明(我表达的可能不太明白,看图吧):<br /><br /><strong>source-over</strong> 默认,相交部分由后绘制图形的填充(颜色,渐变,纹理)覆盖,全部浏览器通过<br /><br /><strong>source-in</strong> 只绘制相交部分,由后绘制图形的填充覆盖,其余部分透明,webkit两兄弟没有通过<br /><br /><strong>source-out</strong> 只绘制后绘制图形不相交的部分,由后绘制图形的填充覆盖,其余部分透明,webkit两兄弟没有通过<br /><br /><strong>source-atop</strong> 后绘制图形不相交的部分透明,相交部分由后绘制图形的填充覆盖,全部浏览器通过<br /><br /><strong>destination-over</strong> 相交部分由先绘制图形的填充(颜色,渐变,纹理)覆盖,全部浏览器通过<br /><br /><strong>destination-in</strong> 只绘制相交部分,由先绘制图形的填充覆盖,其余部分透明,webkit两兄弟没有通过<br /><br /><strong>destination-out</strong> 只绘制先绘制图形不相交的部分,由先绘制图形的填充覆盖,其余部分透明,全部浏览器通过<br /><br /><strong>destination-atop</strong> 先绘制图形不相交的部分透明,相交部分由先绘制图形的填充覆盖,webkit两兄弟没有通过<br /><br /><strong>lighter</strong> 相交部分由根据先后图形填充来增加亮度,全部浏览器通过<br /><br /><strong>darker</strong> 相交部分由根据先后图形填充来降低亮度,chrome通过,firefox官方说Firefox 3.6 / Thunderbird 3.1 / Fennec 1.0以后版本移除这个效果-0-,why?safari看似可以,但是无论你什么颜色,它都给填充成黑色,opera无效果<br /><br /><strong>copy</strong> 只绘制后绘制图形,只有opera通过<br /><br /><strong>xor</strong> 相交部分透明,全部浏览器通过<br /><br />结果太令人无语了,特别是firefox那个新版本移除,我靠,为嘛啊?chrome和safari难兄难弟,成绩一塌糊涂,难道是webkit核心的问题?safari那个填充黑色很有IE6-中png透明问题的风范...opera表现很抢眼,只有一个效果未实现,继续努力!<br /><br />评分及浏览器版本:<br />Chrome dev 7.0.503.0 : 7/12<br />Firefox 3.6.6 : 10/12<br />Opera 10.53 : 11/12<br />Safari 4.0.3(531.9.1) : 6/12<img src ="http://www.blogjava.net/ivanwan/aggbug/411623.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2014-03-28 15:48 <a href="http://www.blogjava.net/ivanwan/archive/2014/03/28/411623.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Nginx 的 location 指令的匹配规则</title><link>http://www.blogjava.net/ivanwan/archive/2012/04/17/374949.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Tue, 17 Apr 2012 11:45:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2012/04/17/374949.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/374949.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2012/04/17/374949.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/374949.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/374949.html</trackback:ping><description><![CDATA[<div><span style="font-size:18px; color:#345286">Nginx 的 location 指令，允许对不同的 URI 进行不同的配置，既可以是字符串，也可以是正则表达式。使用正则表达式，须使用以下前缀：</span><span style="font-size:18px"><br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (1) <strong>~*</strong>, 表示不区分大小写的匹配。</span><span style="font-size:18px"><br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (2) <strong>~</strong>, 表示区分大小写的匹配。</span><span style="font-size:18px"><br /> <br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 对于非正则的匹配，即字符串匹配，有如下前缀：</span><span style="font-size:18px"><br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (1) <strong>^~</strong>, 表示匹配到字符串后，终止正则匹配。</span><span style="font-size:18px"><br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (2) <strong>=</strong>, 表示精确匹配。</span><span style="font-size:18px"><br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (3) <strong>@</strong>, 当然，这个也算不上字符串匹配。如果可以，你也可以将其理解成是正则匹配。它是一个命名标记，这种 location 不会用于正常的请求，它们通常只用于处理内部的重定向。</span><span style="font-size:18px"><br /> <br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在匹配过程中，Nginx 将首先匹配字符串，然后匹配正则表达式。匹配到第一个正则表达式后，会停止搜索。如果匹配到正则表达式，则使用正则表达式的搜索结果，如果没有匹配到正则表达式，则使用字符串的搜索结果。</span><span style="font-size:18px"><br /> <br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 上面这段话的意思是说，有一个字符串和正则表达式均能匹配上，那么会使用正则表达式的搜索结果。这里，我们可以使用前缀<strong>"^~"</strong> 来禁止匹配到字符串后，继续检查正则表达式。匹配到 URI 后，将停止搜索。</span><span style="font-size:18px"><br /> <br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 使用前缀 <strong>"="</strong> 可以进行精确的 URI 匹配，如果找到匹配的 URI，则停止搜索。"location = /" 只能匹配到 "/"，而 "/test.html" 则不能被匹配。</span><span style="font-size:18px"><br /> <br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 正则表达式的匹配，按照它们在配置文件中的顺序进行，写在前面的优先。</span><span style="font-size:18px"><br /> <br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 另外，前缀 <strong>"@"</strong> 是一个命名标记，这种 location 不会用于正常的请求，它们通常只用于处理内部的重定向(例如：error_page, try_files)。</span><span style="font-size:18px"><br /> <br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 最后总结一下匹配的过程：</span><span style="font-size:18px"><br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (1) 前缀 <strong>"="</strong> 先进行匹配，如果找到了，终止搜索。</span><span style="font-size:18px"><br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (2) 对所有其它  location 进行非正则的匹配，找到最精确匹配(对于 /blog/admin/ 这个 URI, location /blog 要比  location / 长，因此 location /blog 要比 location / 要精确)的那个。如果找到的这个是带<strong>"^~"</strong> 前缀的，则终止搜索并直接返回找到的这个，否则开始正则查找。<strong>会不会出现所有的非正则匹配都无法匹配到  URI 呢，当然，你若不定义一个 location /，这种情况的确会发生，没关系啊，它会进行正则查找的。</strong></span><span style="font-size:18px"><br /> </span><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (3) 正则查找，按照我们配置文件中配置的 location 顺序进行查找。</span><span style="font-size:18px"><br /> </span> <p><span style="font-size:18px; color:#345286">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (4) 如果正则查找匹配成功，则使用此正则匹配的 location，否则，使用第二步查找的结果。如果『否则』发生了，同时，第二步中的粗体字部分的假设的情况也发生了，怎么办？404 会等着你的。</span></p> <p><span style="font-size:18px; color:#345286"><br /> </span></p> <p><span style="font-size:18px; color:#345286">参考：</span><a href="http://blog.csdn.net/fengmo_q/article/details/6683377">nginx location的管理以及查找</a></p> <p><br /> </p>  <p style="margin-top:11px; margin-right:0px; margin-bottom:11px; margin-left:0px"> 例子：</p> <blockquote style="padding-top:1px; padding-right:10px; padding-bottom:1px; padding-left:10px; margin-top:10px; margin-right:0px; margin-bottom:10px; margin-left:10px; background-color:#efefef"> <p style="margin-top:11px; margin-right:0px; margin-bottom:11px; margin-left:0px"> location = / {<br /> # 只匹配 / 查询。<br /> [ configuration A ]<br /> }</p> </blockquote> <blockquote style="padding-top:1px; padding-right:10px; padding-bottom:1px; padding-left:10px; margin-top:10px; margin-right:0px; margin-bottom:10px; margin-left:10px; background-color:#efefef"> <p style="margin-top:11px; margin-right:0px; margin-bottom:11px; margin-left:0px"> location / {<br /> # 匹配任何查询，因为所有请求都已 / 开头。但是正则表达式规则和长的块规则将被优先和查询匹配。<br /> [ configuration B ]<br /> }</p> </blockquote> <blockquote style="padding-top:1px; padding-right:10px; padding-bottom:1px; padding-left:10px; margin-top:10px; margin-right:0px; margin-bottom:10px; margin-left:10px; background-color:#efefef"> <p style="margin-top:11px; margin-right:0px; margin-bottom:11px; margin-left:0px"> location ^~ /images/ {<br /> # 匹配任何已 /images/ 开头的任何查询并且停止搜索。任何正则表达式将不会被测试。<br /> [ configuration C ]<br /> }</p> </blockquote> <blockquote style="padding-top:1px; padding-right:10px; padding-bottom:1px; padding-left:10px; margin-top:10px; margin-right:0px; margin-bottom:10px; margin-left:10px; background-color:#efefef"> <p style="margin-top:11px; margin-right:0px; margin-bottom:11px; margin-left:0px"> location ~* \.(gif|jpg|jpeg)$ {<br /> # 匹配任何已 gif、jpg 或 jpeg 结尾的请求。然而所有 /images/ 目录的请求将使用 Configuration C。<br /> [ configuration D ]<br /> }</p> </blockquote> <p style="margin-top:11px; margin-right:0px; margin-bottom:11px; margin-left:0px"> <strong>例子请求:</strong></p> <p style="margin-top:11px; margin-right:0px; margin-bottom:11px; margin-left:0px"> </p> <p align="left">1， /&nbsp;&nbsp;&nbsp;-&gt;&nbsp;&nbsp; 精确匹配到第1个location，匹配停止，使用configuration A<br /> 2，/some/other/url&nbsp;&nbsp;&nbsp; -&gt;&nbsp; 首先前缀部分字符串匹配到了第2个location，然后进行正则匹配，显然没有匹配上，则使用第2个location的配置configurationB<br /> 3，/images /1.jpg&nbsp; -&gt;&nbsp;  首先前缀部分字符串匹配到了第2个location，但是接着对第3个location也前缀匹配上了，而且这时已经是配置文件里面对这个url的最大字 符串匹配了，并且location带有 "^~" 前缀，则不再进行正则匹配，最终使用configuration C<br /> 4，/some/other/path/to/1.jpg&nbsp; -&gt; 首先前缀部分同样字符串匹配到了第2个location，然后进行正则匹配，这时正则匹配成功，则使用congifuration D</p> <p style="margin-top:11px; margin-right:0px; margin-bottom:11px; margin-left:0px"> </p> <p style="margin-top:11px; margin-right:0px; margin-bottom:11px; margin-left:0px"> 注意：按任意顺序定义这4个配置结果将仍然一样。</p></div><img src ="http://www.blogjava.net/ivanwan/aggbug/374949.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2012-04-17 19:45 <a href="http://www.blogjava.net/ivanwan/archive/2012/04/17/374949.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>nginx二级目录自动添加斜杠(“/”)</title><link>http://www.blogjava.net/ivanwan/archive/2012/04/10/373710.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Tue, 10 Apr 2012 07:25:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2012/04/10/373710.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/373710.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2012/04/10/373710.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/373710.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/373710.html</trackback:ping><description><![CDATA[<div><div id="blog_text">网上搜索到的是在配置文件中添加：<br /> <br /> optimize_server_names off;<br /> server_name_in_redirect off;<br /> <br /> 但在nginx0.8.38中提示：<br /> <br /> Restarting nginx: [warn]: the "optimize_server_names" directive is  deprecated, use the "server_name_in_redirect" directive instead in  /etc/nginx/nginx.conf:44<br /> [emerg]: "server_name_in_redirect" directive is duplicate in /etc/nginx/nginx.conf:45<br /> configuration file /etc/nginx/nginx.conf test failed<br /> <br /> 大意是说：<br /> optimize_server_names已经被弃用，只用server_name_in_redirect即可。<br /> <br /> 因此，只需在nginx.conf中添加以下一行即可。<br /> <br /> server_name_in_redirect off;</div></div><img src ="http://www.blogjava.net/ivanwan/aggbug/373710.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2012-04-10 15:25 <a href="http://www.blogjava.net/ivanwan/archive/2012/04/10/373710.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>bootstrap toolkit sample例子</title><link>http://www.blogjava.net/ivanwan/archive/2012/02/14/369902.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Mon, 13 Feb 2012 16:26:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2012/02/14/369902.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/369902.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2012/02/14/369902.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/369902.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/369902.html</trackback:ping><description><![CDATA[最近发现bootstrap toolkit非常好用，现在收集一下sample网站：<br />1.http://twitter.github.com/bootstrap/（首先主站，可惜要fq）<br />2.http://webdesigntutsplus.s3.amazonaws.com/tuts/195_bootstrap/demo/main.html （也是一个简单的列子，可以作为参考)<br />3.http://www.breakingnews.com/ (新闻类网站，做的漂亮呀。。。）<br />4.http://www.mobile-loft.com/ &nbsp;(整体风格简洁)<br />5.http://demo.newfies-dialer.org/ (ajax登录的例子)<img src ="http://www.blogjava.net/ivanwan/aggbug/369902.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2012-02-14 00:26 <a href="http://www.blogjava.net/ivanwan/archive/2012/02/14/369902.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>nginx 编译选项</title><link>http://www.blogjava.net/ivanwan/archive/2011/12/13/366241.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Tue, 13 Dec 2011 07:01:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2011/12/13/366241.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/366241.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2011/12/13/366241.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/366241.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/366241.html</trackback:ping><description><![CDATA[<div><p>configure 脚本确定系统所具有一些特性，特别是 nginx 用来处理连接的方法。然后，它创建 Makefile 文件。 </p><p>configure 支持下面的选项： </p><p><strong>--prefix=</strong>&lt;path&gt; - Nginx安装路径。如果没有指定，默认为 /usr/local/nginx。 </p><p><strong>--sbin-path=</strong>&lt;path&gt; - Nginx可执行文件安装路径。只能安装时指定，如果没有指定，默认为&lt;prefix&gt;/sbin/nginx。 </p><p><strong>--conf-path=</strong>&lt;path&gt; - 在没有给定-c选项下默认的nginx.conf的路径。如果没有指定，默认为&lt;prefix&gt;/conf/nginx.conf。 </p><p><strong>--pid-path=</strong>&lt;path&gt; - 在nginx.conf中没有指定pid指令的情况下，默认的nginx.pid的路径。如果没有指定，默认为 &lt;prefix&gt;/logs/nginx.pid。 </p><p><strong>--lock-path=</strong>&lt;path&gt; - nginx.lock文件的路径。 </p><p><strong>--error-log-path=</strong>&lt;path&gt; - 在nginx.conf中没有指定error_log指令的情况下，默认的错误日志的路径。如果没有指定，默认为 &lt;prefix&gt;/logs/error.log。 </p><p><strong>--http-log-path=</strong>&lt;path&gt; - 在nginx.conf中没有指定access_log指令的情况下，默认的访问日志的路径。如果没有指定，默认为 &lt;prefix&gt;/logs/access.log。 </p><p><strong>--user=</strong>&lt;user&gt; - 在nginx.conf中没有指定user指令的情况下，默认的nginx使用的用户。如果没有指定，默认为 nobody。 </p><p><strong>--group=</strong>&lt;group&gt; - 在nginx.conf中没有指定user指令的情况下，默认的nginx使用的组。如果没有指定，默认为 nobody。 </p><p><strong>--builddir=DIR</strong> - 指定编译的目录 </p><p><strong>--with-rtsig_module</strong> - 启用 rtsig 模块 </p><p><strong>--with-select_module</strong> <strong>--without-select_module</strong> -  Whether or not to enable the select module. This module is enabled by  default if a more suitable method such as kqueue, epoll, rtsig or  /dev/poll is not discovered by configure. </p><p>//允许或不允许开启SELECT模式，如果 configure 没有找到更合适的模式，比如：kqueue(sun  os),epoll (linux kenel 2.6+),  rtsig(实时信号)或者/dev/poll(一种类似select的模式，底层实现与SELECT基本相 同，都是采用轮训方法)  SELECT模式将是默认安装模式 </p><p><strong>--with-poll_module</strong>  <strong>--without-poll_module</strong> - Whether  or not to enable the poll module. This module is enabled by default if a  more suitable method such as kqueue, epoll, rtsig or /dev/poll is not  discovered by configure. </p><p><strong>--with-http_ssl_module</strong> - Enable ngx_http_ssl_module.  Enables SSL support and the ability to handle HTTPS requests.  Requires  OpenSSL. On Debian, this is libssl-dev. </p><p>//开启HTTP SSL模块，使NGINX可以支持HTTPS请求。这个模块需要已经安装了OPENSSL，在DEBIAN上是libssl-dev </p><p><strong>--with-http_realip_module</strong> - 启用 ngx_http_realip_module </p><p><strong>--with-http_addition_module</strong> - 启用 ngx_http_addition_module </p><p><strong>--with-http_sub_module</strong> - 启用 ngx_http_sub_module </p><p><strong>--with-http_dav_module</strong> - 启用 ngx_http_dav_module </p><p><strong>--with-http_flv_module</strong> - 启用 ngx_http_flv_module </p><p><strong>--with-http_stub_status_module</strong> - 启用 "server status" 页 </p><p><strong>--without-http_charset_module</strong> - 禁用 ngx_http_charset_module </p><p><strong>--without-http_gzip_module</strong> - 禁用 ngx_http_gzip_module. 如果启用，需要 zlib 。 </p><p><strong>--without-http_ssi_module</strong> - 禁用 ngx_http_ssi_module </p><p><strong>--without-http_userid_module</strong> - 禁用 ngx_http_userid_module </p><p><strong>--without-http_access_module</strong> - 禁用 ngx_http_access_module </p><p><strong>--without-http_auth_basic_module</strong> - 禁用 ngx_http_auth_basic_module </p><p><strong>--without-http_autoindex_module</strong> - 禁用 ngx_http_autoindex_module </p><p><strong>--without-http_geo_module</strong> - 禁用 ngx_http_geo_module </p><p><strong>--without-http_map_module</strong> - 禁用 ngx_http_map_module </p><p><strong>--without-http_referer_module</strong> - 禁用 ngx_http_referer_module </p><p><strong>--without-http_rewrite_module</strong> - 禁用 ngx_http_rewrite_module. 如果启用需要 PCRE 。 </p><p><strong>--without-http_proxy_module</strong> - 禁用 ngx_http_proxy_module </p><p><strong>--without-http_fastcgi_module</strong> - 禁用 ngx_http_fastcgi_module </p><p><strong>--without-http_memcached_module</strong> - 禁用 ngx_http_memcached_module </p><p><strong>--without-http_limit_zone_module</strong> - 禁用 ngx_http_limit_zone_module </p><p><strong>--without-http_empty_gif_module</strong> - 禁用 ngx_http_empty_gif_module </p><p><strong>--without-http_browser_module</strong> - 禁用 ngx_http_browser_module </p><p><strong>--without-http_upstream_ip_hash_module</strong> - 禁用 ngx_http_upstream_ip_hash_module </p><p><strong>--with-http_perl_module</strong> - 启用 ngx_http_perl_module </p><p><strong>--with-perl_modules_path=PATH</strong> - 指定 perl 模块的路径 </p><p><strong>--with-perl=PATH</strong> - 指定 perl 执行文件的路径 </p><p><strong>--http-log-path=PATH</strong> - Set path to the http access log </p><p><strong>--http-client-body-temp-path=PATH</strong> - Set path to the http client request body temporary files </p><p><strong>--http-proxy-temp-path=PATH</strong> - Set path to the http proxy temporary files </p><p><strong>--http-fastcgi-temp-path=PATH</strong> - Set path to the http fastcgi temporary files </p><p><strong>--without-http</strong> - 禁用 HTTP server </p><p><strong>--with-mail</strong> - 启用 IMAP4/POP3/SMTP 代理模块 </p><p><strong>--with-mail_ssl_module</strong> - 启用 ngx_mail_ssl_module </p><p><strong>--with-cc=PATH</strong> - 指定 C 编译器的路径 </p><p><strong>--with-cpp=PATH</strong> - 指定 C 预处理器的路径 </p><p><strong>--with-cc-opt=OPTIONS</strong> - Additional parameters which will  be added to the variable CFLAGS. With the use of the system library PCRE  in FreeBSD, it is necessary to indicate --with-cc-opt="-I  /usr/local/include". If we are using select() and it is necessary to  increase the number of file descriptors, then this also can be assigned  here: --with-cc-opt="-D FD_SETSIZE=2048". </p><p><strong>--with-ld-opt=OPTIONS</strong> - Additional parameters passed to  the linker.  With the use of the system library PCRE in FreeBSD, it is  necessary to indicate --with-ld-opt="-L /usr/local/lib". </p><p><strong>--with-cpu-opt=CPU</strong> - 为特定的 CPU 编译，有效的值包括：pentium, pentiumpro, pentium3, pentium4, athlon, opteron, amd64, sparc32, sparc64, ppc64 </p><p><strong>--without-pcre</strong> - 禁止 PCRE 库的使用。同时也会禁止 HTTP rewrite 模块。在 "location" 配置指令中的正则表达式也需要 PCRE 。 </p><p><strong>--with-pcre=DIR</strong> - 指定 PCRE 库的源代码的路径。 </p><p><strong>--with-pcre-opt=OPTIONS</strong> - Set additional options for PCRE building. </p><p><strong>--with-md5=DIR</strong> - Set path to md5 library sources. </p><p><strong>--with-md5-opt=OPTIONS</strong> - Set additional options for md5 building. </p><p><strong>--with-md5-asm</strong> - Use md5 assembler sources. </p><p><strong>--with-sha1=DIR</strong> - Set path to sha1 library sources. </p><p><strong>--with-sha1-opt=OPTIONS</strong> - Set additional options for sha1 building. </p><p><strong>--with-sha1-asm</strong> - Use sha1 assembler sources. </p><p><strong>--with-zlib=DIR</strong> - Set path to zlib library sources. </p><p><strong>--with-zlib-opt=OPTIONS</strong> - Set additional options for zlib building. </p><p><strong>--with-zlib-asm=CPU</strong> - Use zlib assembler sources optimized for specified CPU, valid values are: pentium, pentiumpro </p><p><strong>--with-openssl=DIR</strong> - Set path to OpenSSL library sources </p><p><strong>--with-openssl-opt=OPTIONS</strong> - Set additional options for OpenSSL building </p><p><strong>--with-debug</strong> - 启用调试日志 </p><p><strong>--add-module=PATH</strong> - Add in a third-party module found in directory PATH </p><p>在不同版本间，选项可能会有些许变化，请总是使用 <em>./configure --help</em> 命令来检查一下当前的选项列表。 </p></div><img src ="http://www.blogjava.net/ivanwan/aggbug/366241.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2011-12-13 15:01 <a href="http://www.blogjava.net/ivanwan/archive/2011/12/13/366241.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>nginx proxy_pass 里的”/”</title><link>http://www.blogjava.net/ivanwan/archive/2011/12/13/366224.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Tue, 13 Dec 2011 05:21:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2011/12/13/366224.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/366224.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2011/12/13/366224.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/366224.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/366224.html</trackback:ping><description><![CDATA[<div><div> 					<p>见配置，摘自nginx.conf 里的server 段：</p>  <div><div><pre style="font-family:monospace;">server { <span style="color: #00007f;">listen</span> <span style="color: #ff0000;">80</span>; server_name abc.163.com ; <span style="color: #00007f;">location</span> / { proxy_pass http://ent.163.com/ ; } <span style="color: #00007f;">location</span> /star/ { proxy_pass http://ent.163.com ; } }</pre></div></div>  <p>里面有两个location，我先说第一个，/ 。其实这里有两种写法，分别是：</p>  <div><div><pre style="font-family:monospace;"><span style="color: #00007f;">location</span> / { proxy_pass http://ent.163.com/ ; }</pre></div></div>   <div><div><pre style="font-family:monospace;"><span style="color: #00007f;">location</span> / { proxy_pass http://ent.163.com ; }</pre></div></div>  <p>出来的效果都一样的。</p> <p>第二个location，/star/。同样两种写法都有，都出来的结果，就不一样了。</p>  <div><div><pre style="font-family:monospace;"><span style="color: #00007f;">location</span> /star/ { proxy_pass http://ent.163.com ; }</pre></div></div>  <p>当访问 http://abc.163.com/star/ 的时候，nginx 会代理访问到 http://ent.163.com/star/ ，并返回给我们。</p>  <div><div><pre style="font-family:monospace;"><span style="color: #00007f;">location</span> /star/ { proxy_pass http://ent.163.com/ ; }</pre></div></div>  <p>当访问 http://abc.163.com/star/ 的时候，nginx 会代理访问到 http://ent.163.com/ ，并返回给我们。</p> <p>这两段配置，分别在于， proxy_pass http://ent.163.com<span style="color: #ff0000;">/</span> ; 这个&#8221;/&#8221;，令到出来的结果完全不同。</p> <p>前者，相当于告诉nginx，我这个location，是代理访问到http://ent.163.com  这个server的，我的location是什么，nginx 就把location 加在proxy_pass 的 server  后面，这里是/star/，所以就相当于 http://ent.163.com/star/。如果是location /blog/ ，就是代理访问到  http://ent.163.com/blog/。</p> <p>后者，相当于告诉nginx，我这个location，是代理访问到http://ent.163.com/的，http: //abc.163.com/star/ == http://ent.163.com/  ，可以这样理解。改变location，并不能改变返回的内容，返回的内容始终是http://ent.163.com/ 。 如果是location  /blog/ ，那就是 http://abc.163.com/blog/ == http://ent.163.com/ 。</p> <p>这样，也可以解释了上面那个location / 的例子，/ 嘛，加在server 的后面，仍然是 / ，所以，两种写法出来的结果是一样的。</p> <p>PS: 如果是 location ~* ^/start/(.*)\.html 这种正则的location，是不能写&#8221;/&#8221;上去的，nginx  -t 也会报错的了。因为，路径都需要正则匹配了嘛，并不是一个相对固定的locatin了，必然要代理到一个server。</p> 				</div></div><img src ="http://www.blogjava.net/ivanwan/aggbug/366224.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2011-12-13 13:21 <a href="http://www.blogjava.net/ivanwan/archive/2011/12/13/366224.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>nginx 正则</title><link>http://www.blogjava.net/ivanwan/archive/2011/12/12/366186.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Mon, 12 Dec 2011 14:25:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2011/12/12/366186.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/366186.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2011/12/12/366186.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/366186.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/366186.html</trackback:ping><description><![CDATA[<div>  			 				location<div id="main"><div id="container"><div id="content"><div post="" type-post="" hentry="" category-linux="" tag-nginx=""  tag-62"="" id="post-1149"><div> <p>syntax: location [=|~|~*|^~] /uri/ { &#8230; }<br /> 语法:location  [=|~|~*|^~] /uri/ { &#8230; }</p> <p>default: no<br /> 默认:否</p>  <p>context:  server<br /> 上下文:server</p> <p>This directive allows different configurations  depending on the URI.  It can be configured using both conventional strings and  regular  expressions. To use regular expressions, you must use the prefix ~* for   case insensitive match and ~ for case sensitive  match.<br /> 这个指令随URL不同而接受不同的结构。你可以配置使用常规字符串和<a href="http://www.dytaobao.com/blog/html/ytag/%e6%ad%a3%e5%88%99" title="View all posts in 正则" target="_blank">正则</a>表达式。如果使用<a href="http://www.dytaobao.com/blog/html/ytag/%e6%ad%a3%e5%88%99" title="View all posts in 正则" target="_blank">正则</a>表达式，你必须使用  ~* 前缀选择不区分大小写的匹配或者 ~ 选择区分大小写的匹配。</p> <p>To determine which location directive  matches a particular query,  the conventional strings are checked first.  Conventional strings match  the beginning portion of the query and are  case-sensitive &#8211; the most  specific match will be used (see below on how  nginx determines  this).  Afterwards, regular expressions are checked in the order defined in the   configuration file. The first regular expression to match the query  will stop  the search. If no regular expression matches are found, the  result from the  convention string search is used.<br /> 确定 哪个location   指令匹配一个特定指令，常规字符串第一个测试。常规字符串匹配请求的开始部分并且区分大小写，最明确的匹配将会被使用（查看下文明白 nginx   怎么确定它）。然后正则表达式按照配置文件里的顺序测试。找到第一个比配的正则表达式将停止搜索。如果没有找到匹配的正则表达式，使用常规字符串的结果。</p> <p>There  are two ways to modify this behavior. The first is to use the  prefix &#8220;=&#8221;, which  matches an exact query only. If the query matches,  then searching stops and the  request is handled immediately. For  example, if the request &#8220;/&#8221; occurs  frequently, then using &#8220;location =  /&#8221; will expedite the processing of this  request.<br /> 有两个方法修改这个行为。第一个方法是使用  &#8220;=&#8221;前缀，将只执行严格匹配。如果这个查询匹配，那么将停止搜索并立即处理这个请求。例子：如果经常发生&#8221;/&#8221;请求，那么使用 &#8220;location = /&#8221;  将加速处理这个请求。</p> <p>The  second is to use the prefix ^~. This prefix is used with a  conventional string  and tells nginx to not check regular expressions if  the path provided is a  match. For instance, &#8220;location ^~ /images/&#8221;  would halt searching if the query  begins with /images/ &#8211; all regular  expression directives would not be  checked.<br /> 第二个是使用 ^~ 前缀。如果把这个前缀用于一个常规字符串那么告诉nginx  如果路径匹配那么不测试正则表达式。</p> <p>Furthermore it is important to know that NGINX does the  comparison  not URL encoded, so if you have a URL like &#8220;/images/%20/test&#8221; then  use  &#8220;/images/ /test&#8221; to determine the location.<br /> 而且它重要在于 NGINX 做比较没有 URL  编码，所以如果你有一个 URL 链接&#8217;/images/%20/test&#8217; , 那么使用 &#8220;images/ /test&#8221;  限定location。</p> <p>To summarize, the order in which directives are checked is as  follows:<br /> 总结，指令按下列顺序被接受:</p> <p>1.  Directives with the = prefix that match the query exactly. If found, searching  stops.<br /> 1. = 前缀的指令严格匹配这个查询。如果找到，停止搜索。<br /> 2. All remaining directives with  conventional strings, longest match first. If this match used the ^~ prefix,  searching stops.<br /> 2. 剩下的常规字符串，长的在前。如果这个匹配使用 ^~ 前缀，搜索停止。<br /> 3. Regular  expressions, in order of definition in the configuration file.<br /> 3.  正则表达式，按配置文件里的顺序。<br /> 4. If #3 yielded a match, that result is used. Else the  match from #2 is used.<br /> 4.  如果第三步产生匹配，则使用这个结果。否则使用第二步的匹配结果。</p> <p>Example:<br /> 例子：</p> <p>location = /  {<br /> # matches the query / only.<br /> # 只匹配 / 查询。<br /> [ configuration A  ]<br /> }<br /> location / {<br /> # matches any query, since all queries begin with /,  but regular<br /> # expressions and any longer conventional blocks will be<br /> #  matched first.<br /> # 匹配任何查询，因为所有请求都已 / 开头。但是正则表达式规则和长的块规则将被优先和查询匹配。<br /> [  configuration B ]<br /> }<br /> location ^~ /images/ {<br /> # matches any query  beginning with /images/ and halts searching,<br /> # so regular expressions will  not be checked.<br /> # 匹配任何已 /images/ 开头的任何查询并且停止搜索。任何正则表达式将不会被测试。<br /> [  configuration C ]<br /> }<br /> location ~* &#8220;.(gif|jpg|jpeg)$ {<br /> # matches any  request ending in gif, jpg, or jpeg. However, all<br /> # requests to the /images/  directory will be handled by<br /> # Configuration C.<br /> # 匹配任何已 gif、jpg 或 jpeg  结尾的请求。然而所有 /images/ 目录的请求将使用 Configuration C。<br /> [ configuration D  ]<br /> }</p> <p>Example requests:<br /> 例子请求:</p> <p>*</p> <p>/ -&gt; configuration  A<br /> *</p> <p>/documents/document.html -&gt; configuration  B<br /> *</p> <p>/images/1.gif -&gt; configuration C<br /> *</p> <p>/documents/1.jpg  -&gt; configuration D</p> <p>Note that you could define these 4 configurations  in any order and the results would remain the  same.<br /> 注意：按任意顺序定义这4个配置结果将仍然一样。</p> <div><a id="viewpost1_TitleUrl" href="../../chenlb/archive/2010/02/03/311772.html">Nginx  Location 语法，与简单配置</a></div> <p>一、介绍<span style="font-size: x-small;"><a href="http://www.dytaobao.com/blog/html/ytag/nginx" title="View all posts in Nginx" target="_blank">Nginx</a>是俄罗斯人编写的十分轻量级的HTTP服务器,<a href="http://www.dytaobao.com/blog/html/ytag/nginx" title="View all posts in Nginx" target="_blank">Nginx</a>，它的发音为&#8220;engine X&#8221;，  是一个高性能的HTTP和反向代理服务器，同时也是一个IMAP/POP3/SMTP  代理服务器．</span><br /> 二、<strong>Location语法</strong><span style="font-size: x-small;">语法：location  [=|~|~*|^~] /uri/ { &#8230; }<br /> 注：<br /> 1、~&nbsp; &nbsp;为区分大小写匹配<br /> 2、~*  为不区分大小写匹配<br /> 3、!~和!~*分别为区分大小写<strong>不匹配</strong>及不区分大小写</span><span style="font-size: x-small;"><strong>不匹配</strong></span><br /> <span style="font-size: x-small;"><strong>示例一：<br /> </strong>location&nbsp;&nbsp;/ {</span> <span style="font-size: x-small;">}<br /> </span><span style="font-size: x-small;">匹配任何查询，因为所有请求都以 /  开头。但是正则表达式规则将被优先和查询匹配。</span><br /> <span style="font-size: x-small;"><strong>示例二：<br /> </strong>location  =/ {}<br /> 仅仅匹配/</span><br /> <span style="font-size: x-small;"><strong>示例三：<br /> </strong>location ~*  \.(gif|jpg|jpeg)$ ｛<br /> </span><span style="font-size: x-small;">rewrite \.(gif|jpg)$  /logo.png;<br /> ｝<br /> 注：不区分大小写匹配任何以gif，jpg，jpeg结尾的文件</span><br /> 三、<strong>ReWrite语法</strong><br /> <span style="font-size: x-small;">last &#8211; 基本上都用这个Flag。<br /> break &#8211; 中止Rewirte，不在继续匹配<br /> redirect &#8211;  返回临时重定向的HTTP状态302<br /> permanent &#8211; 返回永久重定向的HTTP状态301</span><br /> <span style="font-size: x-small;">1、下面是可以用来判断的表达式：</span><br /> <span style="font-size: x-small;">-f和!-f用来判断是否存在文件<br /> </span><span style="font-size: x-small;">-d和!-d用来判断是否存在目录<br /> </span><span style="font-size: x-small;">-e和!-e用来判断是否存在文件或目录<br /> </span><span style="font-size: x-small;">-x和!-x用来判断文件是否可执行</span><br /> <span style="font-size: x-small;">2、下面是可以用作判断的全局变量</span><br /> <span style="font-size: x-small;">例：<a href="http://localhost:88/test1/test2/test.php" target="_blank">http://localhost:88/test1/test2/test.php</a><br /> $host：localhost<br /> $server_port：88<br /> $request_uri：</span><span style="font-size: x-small;"><a href="http://localhost:88/test1/test2/test.php" target="_blank">http://localhost:88/test1/test2/test.php</a><br /> $document_uri：/test1/test2/test.php<br /> $document_root：D:\nginx/html<br /> $request_filename：D:\nginx/html/test1/test2/test.php</span><br /> 四、<strong>Redirect语法</strong><br /> <span style="font-size: x-small;"> server {<br /> listen 80;<br /> server_name start.igrow.cn;<br /> index index.html index.php;<br /> root html;<br /> if ($http_host !~  &#8220;^star\.igrow\.cn</span></p> <p><strong>正则表达式匹配，其中：</strong></p> <div> <ol title="Double click to hide line number."><li>* ~ 为区分大小写匹配</li><li>* ~* 为不区分大小写匹配</li><li>* !~和!~*分别为区分大小写不匹配及不区分大小写不匹配</li></ol> </div> <p><strong>文件及目录匹配，其中：</strong></p> <div> <ol title="Double click to hide line number."><li>* -f和!-f用来判断是否存在文件</li><li>* -d和!-d用来判断是否存在目录</li><li>* -e和!-e用来判断是否存在文件或目录</li><li>* -x和!-x用来判断文件是否可执行</li></ol> </div> <p><strong>flag标记有：</strong></p> <div> <ol title="Double click to hide line number."><li>* last 相当于Apache里的[L]标记，表示完成rewrite</li><li>* break 终止匹配, 不再匹配后面的规则</li><li>* redirect 返回302临时重定向 地址栏会显示跳转后的地址</li><li>* permanent 返回301永久重定向 地址栏会显示跳转后的地址</li></ol> </div> <p><strong>一些可用的全局变量有，可以用做条件判断(待补全)</strong></p> <div> <ol title="Double click to hide line number."><li>$args</li><li>$content_length</li><li>$content_type</li><li>$document_root</li><li>$document_uri</li><li>$host</li><li>$http_user_agent</li><li>$http_cookie</li><li>$limit_rate</li><li>$request_body_file</li><li>$request_method</li><li>$remote_addr</li><li>$remote_port</li><li>$remote_user</li><li>$request_filename</li><li>$request_uri</li><li>$query_string</li><li>$scheme</li><li>$server_protocol</li><li>$server_addr</li><li>$server_name</li><li>$server_port</li><li>$uri</li></ol> </div> <p><strong>结合QeePHP的例子</strong></p> <div> <ol title="Double click to hide line number."><li>if (!-d $request_filename) {</li><li>rewrite ^/([a-z-A-Z]+)/([a-z-A-Z]+)/?(.*)$  /index.php?namespace=user&amp;amp;controller=$1&amp;amp;action=$2&amp;amp;$3  last;</li><li>rewrite ^/([a-z-A-Z]+)/?$ /index.php?namespace=user&amp;amp;controller=$1  last;</li><li>break;</li></ol> </div> <p><strong>多目录转成参数</strong><br /> abc.domian.com/sort/2 =&gt;  abc.domian.com/index.php?act=sort&amp;name=abc&amp;id=2</p> <div> <ol title="Double click to hide line number."><li>if ($host ~* (.*)\.domain\.com) {</li><li>set $sub_name $1;</li><li>rewrite ^/sort\/(\d+)\/?$ /index.php?act=sort&amp;cid=$sub_name&amp;id=$1  last;</li><li>}</li></ol> </div> <p><strong>目录对换</strong><br /> /123456/xxxx -&gt; /xxxx?id=123456</p> <div> <ol title="Double click to hide line number."><li>rewrite ^/(\d+)/(.+)/ /$2?id=$1 last;</li></ol> </div> <p><strong>例如下面设定nginx在用户使用ie的使用重定向到/nginx-ie目录下：</strong></p> <div> <ol title="Double click to hide line number."><li>if ($http_user_agent ~ MSIE) {</li><li>rewrite ^(.*)$ /nginx-ie/$1 break;</li><li>}</li></ol> </div> <p><strong>目录自动加&#8220;/&#8221;</strong></p> <div> <ol title="Double click to hide line number."><li>if (-d $request_filename){</li><li>rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;</li><li>}</li></ol> </div> <p><strong>禁止htaccess</strong></p> <div> <ol title="Double click to hide line number."><li>location ~/\.ht {</li><li>deny all;</li><li>}</li></ol> </div> <p><strong>禁止多个目录</strong></p> <div> <ol title="Double click to hide line number."><li>location ~ ^/(cron|templates)/ {</li><li>deny all;</li><li>break;</li><li>}</li></ol> </div> <p><strong>禁止以/data开头的文件</strong><br /> 可以禁止/data/下多级目录下.log.txt等请求;</p> <div> <ol title="Double click to hide line number."><li>location ~ ^/data {</li><li>deny all;</li><li>}</li></ol> </div> <p><strong>禁止单个目录</strong><br /> 不能禁止.log.txt能请求</p> <div> <ol title="Double click to hide line number."><li>location /searchword/cron/ {</li><li>deny all;</li><li>}</li></ol> </div> <p><strong>禁止单个文件</strong></p> <div> <ol title="Double click to hide line number."><li>location ~ /data/sql/data.sql {</li><li>deny all;</li><li>}</li></ol> </div> <p><strong>给favicon.ico和robots.txt设置过期时间;</strong><br /> 这里为favicon.ico为99天,robots.txt为7天并不记录404错误日志</p> <div> <ol title="Double click to hide line number."><li>location ~(favicon.ico) {</li><li>log_not_found off;</li><li>expires 99d;</li><li>break;</li><li>}</li><li><br /></li><li>location ~(robots.txt) {</li><li>log_not_found off;</li><li>expires 7d;</li><li>break;</li><li>}</li></ol> </div> <p><strong>设定某个文件的过期时间;这里为600秒，并不记录访问日志</strong></p> <div> <ol title="Double click to hide line number."><li>location ^~ /html/scripts/loadhead_1.js {</li><li>access_log off;</li><li>root /opt/lampp/htdocs/web;</li><li>expires 600;</li><li>break;</li><li>}</li></ol> </div> <p><strong>文件反盗链并设置过期时间</strong><br /> 这里的return 412  为自定义的http状态码，默认为403，方便找出正确的盗链的请求<br /> &#8220;rewrite ^/  http://leech.c1gstudio.com/leech.gif;&#8221;显示一张防盗链图片<br /> &#8220;access_log  off;&#8221;不记录访问日志，减轻压力<br /> &#8220;expires 3d&#8221;所有文件3天的浏览器缓存</p> <div> <ol title="Double click to hide line number."><li>location ~* ^.+\.(jpg|jpeg|gif|png|swf|rar|zip|css|js)$ {</li><li>valid_referers none blocked *.c1gstudio.com *.c1gstudio.net localhost  208.97.167.194;</li><li>if ($invalid_referer) {</li><li>rewrite ^/ http://leech.c1gstudio.com/leech.gif;</li><li>return 412;</li><li>break;</li><li>}</li><li>access_log off;</li><li>root /opt/lampp/htdocs/web;</li><li>expires 3d;</li><li>break;</li><li>}</li></ol> </div> <p><strong>只充许固定ip访问网站，并加上密码</strong></p> <div> <ol title="Double click to hide line number."><li>root /opt/htdocs/www;</li><li>allow 208.97.167.194;</li><li>allow 222.33.1.2;</li><li>allow 231.152.49.4;</li><li>deny all;</li><li>auth_basic &#8220;C1G_ADMIN&#8221;;</li><li>auth_basic_user_file htpasswd;</li></ol> </div> <p><strong>将多级目录下的文件转成一个文件，增强seo效果</strong><br /> /job-123-456-789.html  指向/job/123/456/789.html</p> <div> <ol title="Double click to hide line number."><li>rewrite ^/job-([0-9]+)-([0-9]+)-([0-9]+)\.html$  /job/$1/$2/jobshow_$3.html last;</li></ol> </div> <p><strong>将根目录下某个文件夹指向2级目录</strong><br /> 如/<strong>shanghai</strong>job/ 指向  /area/<strong>shanghai</strong>/<br /> 如果你将last改成permanent，那么浏览器地址栏显是/location/shanghai/</p> <div> <ol title="Double click to hide line number."><li>rewrite ^/([0-9a-z]+)job/(.*)$ /area/$1/$2  last;</li></ol> </div> <p>上面例子有个问题是访问/shanghai 时将不会匹配</p> <div> <ol title="Double click to hide line number."><li>rewrite ^/([0-9a-z]+)job$ /area/$1/ last;</li><li>rewrite ^/([0-9a-z]+)job/(.*)$ /area/$1/$2 last;</li></ol> </div> <p>这样/shanghai  也可以访问了，但页面中的相对链接无法使用，<br /> 如./list_1.html真实地址是/area/shanghia/list_1.html会变成/list_1.html,导至无法访问。</p> <p>那我加上自动跳转也是不行咯<br /> (-d $request_filename)它有个条件是必需为真实目录，而我的rewrite不是的，所以没有效果</p> <div> <ol title="Double click to hide line number."><li>if (-d $request_filename){</li><li>rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;</li><li>}</li></ol> </div> <p>知道原因后就好办了，让我手动跳转吧</p> <div> <ol title="Double click to hide line number."><li>rewrite ^/([0-9a-z]+)job$ /$1job/ permanent;</li><li>rewrite ^/([0-9a-z]+)job/(.*)$ /area/$1/$2 last;</li></ol> </div> <p><strong>文件和目录不存在的时候重定向：</strong></p> <div> <ol title="Double click to hide line number."><li>if (!-e $request_filename) {</li><li>proxy_pass http://127.0.0.1;</li><li>}</li></ol> </div> <p><strong>域名跳转</strong></p> <div> <ol title="Double click to hide line number."><li>server</li><li>{</li><li>listen 80;</li><li>server_name jump.c1gstudio.com;</li><li>index index.html index.htm index.php;</li><li>root /opt/lampp/htdocs/www;</li><li>rewrite ^/ http://www.c1gstudio.com/;</li><li>access_log off;</li><li>}</li></ol> </div> <p><strong>多域名转向</strong></p> <div> <ol title="Double click to hide line number."><li>server_name www.c1gstudio.com www.c1gstudio.net;</li><li>index index.html index.htm index.php;</li><li>root /opt/lampp/htdocs;</li><li>if ($host ~ &#8220;c1gstudio\.net&#8221;) {</li><li>rewrite ^(.*) http://www.c1gstudio.com$1 permanent;</li><li>}</li></ol> </div> <p><strong>三级域名跳转</strong></p> <div> <ol title="Double click to hide line number."><li>if ($http_host ~* &#8220;^(.*)\.i\.c1gstudio\.com$&#8221;) {</li><li>rewrite ^(.*) http://top.yingjiesheng.com$1;</li><li>break;</li><li>}</li></ol> </div> <p><strong>域名镜向</strong></p> <div> <ol title="Double click to hide line number."><li>server</li><li>{</li><li>listen 80;</li><li>server_name mirror.c1gstudio.com;</li><li>index index.html index.htm index.php;</li><li>root /opt/lampp/htdocs/www;</li><li>rewrite ^/(.*) http://www.c1gstudio.com/$1 last;</li><li>access_log off;</li><li>}</li></ol> </div> <p><strong>某个子目录作镜向</strong></p> <div> <ol title="Double click to hide line number."><li>location ^~ /zhaopinhui {</li><li>rewrite ^.+ http://zph.c1gstudio.com/ last;</li><li>break;</li><li>}</li></ol> </div> <p><strong>discuz ucenter home (uchome) rewrite</strong></p> <div> <ol title="Double click to hide line number."><li>rewrite ^/(space|network)-(.+)\.html$ /$1.php?rewrite=$2  last;</li><li>rewrite ^/(space|network)\.html$ /$1.php last;</li><li>rewrite ^/([0-9]+)$ /space.php?uid=$1 last;</li></ol> </div> <p><strong>discuz 7 rewrite</strong></p> <div> <ol title="Double click to hide line number."><li>rewrite ^(.*)/archiver/((fid|tid)-[\w\-]+\.html)$  $1/archiver/index.php?$2 last;</li><li>rewrite ^(.*)/forum-([0-9]+)-([0-9]+)\.html$  $1/forumdisplay.php?fid=$2&amp;page=$3 last;</li><li>rewrite ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$  $1/viewthread.php?tid=$2&amp;extra=page\%3D$4&amp;page=$3 last;</li><li>rewrite ^(.*)/profile-(username|uid)-(.+)\.html$ $1/viewpro.php?$2=$3 last;</li><li>rewrite ^(.*)/space-(username|uid)-(.+)\.html$ $1/space.php?$2=$3 last;</li><li>rewrite ^(.*)/tag-(.+)\.html$ $1/tag.php?name=$2 last;</li></ol> </div> <p><strong>给discuz某版块单独配置域名</strong></p> <div> <ol title="Double click to hide line number."><li>server_name bbs.c1gstudio.com news.c1gstudio.com;</li><li><br /></li><li>location = / {</li><li>if ($http_host ~ news\.c1gstudio.com$) {</li><li>rewrite ^.+ http://news.c1gstudio.com/forum-831-1.html last;</li><li>break;</li><li>}</li><li>}</li></ol> </div> <p><strong>discuz ucenter 头像 rewrite 优化</strong></p> <div> <ol title="Double click to hide line number."><li>location ^~ /ucenter {</li><li>location ~ .*\.php?$</li><li>{</li><li>#fastcgi_pass unix:/tmp/php-cgi.sock;</li><li>fastcgi_pass 127.0.0.1:9000;</li><li>fastcgi_index index.php;</li><li>include fcgi.conf;</li><li>}</li><li><br /></li><li>location /ucenter/data/avatar {</li><li>log_not_found off;</li><li>access_log off;</li><li>location ~ /(.*)_big\.jpg$ {</li><li>error_page 404 /ucenter/images/noavatar_big.gif;</li><li>}</li><li>location ~ /(.*)_middle\.jpg$ {</li><li>error_page 404 /ucenter/images/noavatar_middle.gif;</li><li>}</li><li>location ~ /(.*)_small\.jpg$ {</li><li>error_page 404 /ucenter/images/noavatar_small.gif;</li><li>}</li><li>expires 300;</li><li>break;</li><li>}</li><li>}</li></ol> </div> <p><strong>jspace rewrite</strong></p> <div> <ol title="Double click to hide line number."><li>location ~ .*\.php?$</li><li>{</li><li>#fastcgi_pass unix:/tmp/php-cgi.sock;</li><li>fastcgi_pass 127.0.0.1:9000;</li><li>fastcgi_index index.php;</li><li>include fcgi.conf;</li><li>}</li><li><br /></li><li>location ~* ^/index.php/</li><li>{</li><li>rewrite ^/index.php/(.*) /index.php?$1 break;</li><li>fastcgi_pass 127.0.0.1:9000;</li><li>fastcgi_index index.php;</li><li>include fcgi.conf;</li><li>}</li></ol> </div> <p><span style="font-size: x-small;">amp;quot <img title="点击图片可在新窗口打开" src="http://extra-001.yo2cdn.com/wp-includes/images/smilies/icon_wink.gif" alt="" border="0" /> {<br /> rewrite ^(.*)</span> <a href="http://star.igrow.cn/" target="_blank"><span style="font-size: x-small;">http://star.igrow.cn</span></a><span style="font-size: x-small;">$1 redirect;<br /> }<br /> }</span><br /> 五、防盗链<span style="font-size: x-small;">location ~* \.(gif|jpg|swf)$ {<br /> valid_referers  none blocked start.igrow.cn sta.igrow.cn;<br /> if ($invalid_referer)  {<br /> rewrite ^/</span> <a href="http://%24host/logo.png;" target="_blank"><span style="font-size: x-small;">http://$host/logo.png;</span></a><br /> <span style="font-size: x-small;"> }<br /> }</span><br /> <strong>六、根据文件类型设置过期时间</strong><br /> <span style="font-size: x-small;">location ~* \.(js|css|jpg|jpeg|gif|png|swf)$ {<br /> if (-f  $request_filename) {<br /> expires&nbsp; &nbsp; 1h;<br /> break;<br /> }<br /> }</span><br /> <strong>七、禁止访问某个目录</strong><br /> <span style="font-size: x-small;">location  ~* \.(txt|doc)${<br /> </span> <span style="font-size: x-small;"> root  /data/www/wwwroot/linuxtone/test;<br /> </span><span style="font-size: x-small;">deny  all;<br /> </span><span style="font-size: x-small;">}<br /> </span></p> <p> <span id="_mce_tmp">XX</span></p> 				       	<ul clearfix"=""><li><a href="http://www.dytaobao.com/blog/html/y2010/1148.html" rel="prev">Previous Entry: php字符日期转目标时区函数</a></li><li><a href="http://www.dytaobao.com/blog/html/y2010/1151.html" rel="next">Next Entry: 大型网站架构演变和知识体系</a></li></ul> 			</div> 			 			<div> 			  <p> 			    Posted in <a href="http://www.dytaobao.com/blog/html/ycategory/linux" title="View all posts in linux" rel="category tag">linux</a>        </p>   			<p>Tags: <a href="http://www.dytaobao.com/blog/html/ytag/nginx" rel="tag">Nginx</a> <a href="http://www.dytaobao.com/blog/html/ytag/%e6%ad%a3%e5%88%99" rel="tag">正则</a></p>        <p> 						  													You can <a href="http://www.dytaobao.com/blog/html/y2010/1149.html#respond">leave a response</a> , or <a href="http://www.dytaobao.com/blog/html/y2010/1149.html/trackback" rel="trackback nofollow">trackback</a> from your own site.  											</p> 				</div>        <div>   Advertisement		   <div>        </div> </div> 		</div>    	    			  	      <div id="respond">     <h3>Leave a Reply</h3>     <div>     	    	    	     </div>           <form action="http://www.dytaobao.com/blog/wp-comments-post.php" method="post" id="commentform">           <div>     <p><input name="author" id="author" value="" size="22" tabindex="1" type="text" />     <label for="author">Name (required)</label></p>          <p><input name="email" id="email" value="" size="22" tabindex="2" type="text" />     <label for="email">Mail (will not be published) (required)</label></p>          <p><input name="url" id="url" value="" size="22" tabindex="3" type="text" />     <label for="url">Website</label></p>   </div>                 <div>     <textarea name="comment" id="comment" cols="100" rows="10" tabindex="4"></textarea>     <p>           </p>     		 		 	  </div>      </form>        </div>    	   	 		</div> 	</div>  <div id="sidebar"> 	<ul clearfix"=""><li id="recent-posts-3"  widget_recent_entries"="">		<div widgettitle"="">Recent Posts</div>		<ul><li><a href="http://www.dytaobao.com/blog/html/y2010/1153.html" title="转 网站架构相关PPT、文章整理（更新于2009-7-15）">转 网站架构相关PPT、文章整理（更新于2009-7-15）</a></li><li><a href="http://www.dytaobao.com/blog/html/y2010/1151.html" title="大型网站架构演变和知识体系">大型网站架构演变和知识体系</a></li><li><a href="http://www.dytaobao.com/blog/html/y2010/1149.html" title="nginx 正则">nginx 正则</a></li><li><a href="http://www.dytaobao.com/blog/html/y2010/1148.html" title="php字符日期转目标时区函数">php字符日期转目标时区函数</a></li><li><a href="http://www.dytaobao.com/blog/html/y2010/1147.html" title="iptables 封IP段">iptables 封IP段</a></li></ul> 		</li><li> 	<ul clearfix"=""><li><a href="http://www.dytaobao.com/blog/html/y2010/1148.html" rel="prev">Previous Entry php字符日期转目标时区函数</a></li><li><a href="http://www.dytaobao.com/blog/html/y2010/1151.html" rel="next">Next Entry 大型网站架构演变和知识体系</a></li></ul>	 </li></ul>               </div> </div><span>November 12th, 2010 by admin            			</span>         <a href="http://www.dytaobao.com/blog/html/y2010/1149.html#comments"  button-style"="" rel="nofollow">Leave a reply &#187;</a>           <div id="footer"> <p>   <a href="http://www.dytaobao.com/blog/html/y2010/1149.html#home">Back to Top</a> </p>  <p> 	&#169; 2010 随风  &#183; Proudly powered by  <a href="http://wordpress.org/" title="Blogsoftware by Wordpress">WordPress</a> 	&amp;   <a href="http://cordobo.com/green-park-2/" title="Cordobo Green Park 2 Beta 5">Green Park 2</a>   by  <a href="http://cordobo.com/" title="Webdesign by Cordobo">Cordobo</a>. </p>  <p>   Valid XHTML 1.0 Transitional | Valid CSS 3  <br /><br /> 	<img src="http://www.dytaobao.com/blog/wp-content/themes/cordobo-green-park-2/img/logo-cgp2.png" alt="Cordobo Green Park 2 logo" title="Cordobo Green Park 2" height="12" width="75" /> </p>  </div>      <a href="http://www.cnzz.com/stat/website.php?web_id=576849" target="_blank" title="站长统计">站长统计</a><img src="http://hzs12.cnzz.com/stat.htm?id=576849&amp;r=http%3A//www.google.com.hk/url%3Fsa%3Dt%26rct%3Dj%26q%3Dnginx+%25E6%25AD%25A3%25E5%2588%2599%25E9%2585%258D%25E7%25BD%25AE%26source%3Dweb%26cd%3D1%26ved%3D0CCYQFjAA%26url%3Dhttp%253A%252F%252Fwww.dytaobao.com%252Fblog%252Fhtml%252Fy2010%252F1149.html%26ei%3Dpw3mTvOAHOWciAf6y_y2BQ%26usg%3DAFQjCNHzXvl3PZVQL8tJlkA4IBkKngFsnA%26cad%3Drjt&amp;lg=undefined&amp;ntime=0.04049100%201323699629&amp;repeatip=0&amp;rtime=0&amp;cnzz_eid=14901350-1323699629-http%3A//www.google.com.hk/url%3Fsa%3Dt%26rct%3Dj%26q%3Dnginx+%25E6%25AD%25A3%25E5%2588%25&amp;showp=1400x1050&amp;st=1323699630&amp;sin=http%3A//www.google.com.hk/url%3Fsa%3Dt%26rct%3Dj%26q%3Dnginx+%25E6%25AD%25A3%25E5%2588%2599%25E9%2585%258D%25E7%25BD%25AE%26source%3Dweb%26cd%3D1%26ved%3D0CCYQFjAA%26url%3Dhttp%253A%252F%252Fwww.dytaobao.com%252Fblog%252Fhtml%252Fy2010%252F1149.html%26ei%3Dpw3mTvOAHOWciAf6y_y2BQ%26usg%3DAFQjCNHzXvl3PZVQL8tJlkA4IBkKngFsnA%26cad%3Drjt&amp;res=0" border="0" height="0" width="0"  alt="" />    </div><img src ="http://www.blogjava.net/ivanwan/aggbug/366186.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2011-12-12 22:25 <a href="http://www.blogjava.net/ivanwan/archive/2011/12/12/366186.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Flex、flash(as3)获取SWF后面的参数 </title><link>http://www.blogjava.net/ivanwan/archive/2011/09/27/359611.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Tue, 27 Sep 2011 06:53:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2011/09/27/359611.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/359611.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2011/09/27/359611.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/359611.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/359611.html</trackback:ping><description><![CDATA[<div id="header">写了一个例子。</div>
<div id="main">
<div class="post">
<div class="postText">
<div id="cnblogs_post_body">
<p>先说flash as3吧，可以用root.loaderInfo.parameters</p>
<p>AS3类 GSPManager.as 代码：&nbsp;&nbsp;&nbsp;</p>
<div class="cnblogs_code">
<div><!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.com/<br/ /><br/ />--><span style="color: #000000">package<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;import&nbsp;flash.display.Sprite;<br />&nbsp;&nbsp;&nbsp;&nbsp;import&nbsp;flash.events.Event;<br />&nbsp;&nbsp;&nbsp;&nbsp;import&nbsp;flash.text.TextField;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;class&nbsp;GSPManager&nbsp;extends&nbsp;Sprite<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;</span><span style="color: #0000ff">function</span><span style="color: #000000">&nbsp;GSPManager()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">this</span><span style="color: #000000">.addEventListener(Event.ADDED_TO_STAGE,addedToStageHandler);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;</span><span style="color: #0000ff">function</span><span style="color: #000000">&nbsp;addedToStageHandler(e:Event):</span><span style="color: #0000ff">void</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">this</span><span style="color: #000000">.removeEventListener(Event.ADDED_TO_STAGE,addedToStageHandler);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;init();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;</span><span style="color: #0000ff">function</span><span style="color: #000000">&nbsp;init():</span><span style="color: #0000ff">void</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">var</span><span style="color: #000000">&nbsp;out_txt:TextField&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">new</span><span style="color: #000000">&nbsp;TextField();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">边框</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out_txt.border&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">true</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">边框颜色</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out_txt.borderColor&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">0x80FF3300</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">大小</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out_txt.width&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">100</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out_txt.height&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">20</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">位置</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out_txt.x&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;(stage.stageWidth&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;out_txt.width)</span><span style="color: #000000">/</span><span style="color: #000000">2;</span><span style="color: #000000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out_txt.y&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;(stage.stageHeight&nbsp;</span><span style="color: #000000">-</span><span style="color: #000000">&nbsp;out_txt.height)</span><span style="color: #000000">/</span><span style="color: #000000">2;</span><span style="color: #000000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">添加到舞台</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;addChild(out_txt);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">获得参数对象</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">var</span><span style="color: #000000">&nbsp;param:Object&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;root.loaderInfo.parameters;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">&nbsp;(param[</span><span style="color: #000000">"</span><span style="color: #000000">name</span><span style="color: #000000">"</span><span style="color: #000000">]</span><span style="color: #000000">!=</span><span style="color: #0000ff">null</span><span style="color: #000000">)&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out_txt.text&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;param[</span><span style="color: #000000">"</span><span style="color: #000000">name</span><span style="color: #000000">"</span><span style="color: #000000">]&nbsp;</span><span style="color: #000000">+</span><span style="color: #000000">&nbsp;param[</span><span style="color: #000000">"</span><span style="color: #000000">num</span><span style="color: #000000">"</span><span style="color: #000000">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;trace(</span><span style="color: #000000">"</span><span style="color: #000000">value:</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">param[</span><span style="color: #000000">"</span><span style="color: #000000">name</span><span style="color: #000000">"</span><span style="color: #000000">]);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">判断</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000">&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;out_txt.text&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">null</span><span style="color: #000000">"</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;trace(</span><span style="color: #000000">"</span><span style="color: #000000">value:null</span><span style="color: #000000">"</span><span style="color: #000000">);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br /></span></div></div>
<p>GetSwfParam.fla 绑定的文档类为GSPManager.as ,在文档类绑定框里写GSPManager这个就可以了</p>
<p>之后编译出来的GetSwfParam.swf 就可以添加到页面了 </p>
<p>Java web页面代码：&nbsp;&nbsp;</p>
<div class="cnblogs_code">
<div><!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.com/<br/ /><br/ />--><span style="color: #000000">&lt;%</span><span style="color: #000000">@&nbsp;page&nbsp;language</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">java</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;import</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">java.util.*</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;contentType</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">text/html;charset=GBK</span><span style="color: #000000">"</span><span style="color: #000000">%&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&lt;!</span><span style="color: #000000">DOCTYPE&nbsp;HTML&nbsp;PUBLIC&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">-//W3C//DTD&nbsp;HTML&nbsp;4.01&nbsp;Transitional//EN</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&lt;</span><span style="color: #000000">html</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">head</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">/</span><span style="color: #000000">head&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&nbsp;&nbsp;<br />&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">body</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">object&nbsp;id</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">g</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;classid</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">clsid:d27cdb6e-ae6d-11cf-96b8-444553540000</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;codebase</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">http://download.macromedia.com/pub/shockwave/_cabs/flash/swflash.cab#version=6,0,29,0</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;width</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">300</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;height</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">200</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">param&nbsp;name</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">movie</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;value</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">GetSwfParam.swf?name=sange&amp;num=66</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">/</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">param&nbsp;name</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">quality</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;value</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">high</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">/</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">param&nbsp;name</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">allowScriptAccess</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;value</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">sameDomain</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">/</span><span style="color: #000000">&gt;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">param&nbsp;name</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">scale</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;value</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">exactfit</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">/</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">embed&nbsp;name</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">g</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;src</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">GetSwfParam.swf</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;quality</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">high</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;scale</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">exactfit</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;align</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">middle</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;play</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">true</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;loop</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">false</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;pluginspage</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">http://www.macromedia.com/go/getflashplayer</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;type</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">application/x-shockwave-flash</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;width</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">300</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;height</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">200</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">&gt;&lt;</span><span style="color: #000000">/</span><span style="color: #000000">embed&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">/</span><span style="color: #000000">object&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">/</span><span style="color: #000000">body&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&lt;</span><span style="color: #000000">/</span><span style="color: #000000">html&gt;</span><span style="color: #000000"><br /></span></div></div>
<p>&nbsp;</p>
<p>&nbsp;这里要说的是swf后有很多参数就用&amp;符号 ,&nbsp;比如<span style="color: #000000">GetSwfParam.swf?name=sange&amp;num=66</span>&amp;id=1</p>
<p>&nbsp;</p>
<p>现在说Flex了，因为让同事也做了这样的东西，但他只会Flex，他没弄出来，所以我试下，发现用root没反映，但我很肯定Flex应该也可以弄出来，发现跟flash as3确实不同，不能用root，因为Flex中没有root这个概念。问了群里的人，收获大了，原来就Application，哈哈，不就是根节点么，也就相当于root，就是名称不一样。</p>
<p>Flex就用Application.application.parameters</p>
<p>GetSwfParam.mxml 代码：&nbsp;</p>
<div class="cnblogs_code">
<div><!--<br/ /><br/ />Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ />http://www.CodeHighlighter.com/<br/ /><br/ />--><span style="color: #000000">&lt;?</span><span style="color: #000000">xml&nbsp;version</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">1.0</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;encoding</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">utf-8</span><span style="color: #000000">"</span><span style="color: #000000">?&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&lt;</span><span style="color: #000000">mx:Application&nbsp;xmlns:mx</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">http://www.adobe.com/2006/mxml</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;backgroundColor</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">#ffffff</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;layout</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">absolute</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;creationComplete</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">init()</span><span style="color: #000000">"</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">mx:Script</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;!</span><span style="color: #000000">[CDATA[<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;</span><span style="color: #0000ff">function</span><span style="color: #000000">&nbsp;init():</span><span style="color: #0000ff">void</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000">//</span><span style="color: #008000">获得参数对象&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">var</span><span style="color: #000000">&nbsp;param:Object&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;Application.application.parameters;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">if</span><span style="color: #000000">(param[</span><span style="color: #000000">"</span><span style="color: #000000">name</span><span style="color: #000000">"</span><span style="color: #000000">]&nbsp;</span><span style="color: #000000">!=</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">null</span><span style="color: #000000">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mytxt.text&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;param[</span><span style="color: #000000">"</span><span style="color: #000000">name</span><span style="color: #000000">"</span><span style="color: #000000">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">else</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mytxt.text&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;</span><span style="color: #000000">"</span><span style="color: #000000">null</span><span style="color: #000000">"</span><span style="color: #000000">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]]</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">/</span><span style="color: #000000">mx:Script&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000">&lt;</span><span style="color: #000000">mx:TextInput&nbsp;id</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">mytxt</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;x</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">60</span><span style="color: #000000">"</span><span style="color: #000000">&nbsp;y</span><span style="color: #000000">=</span><span style="color: #000000">"</span><span style="color: #000000">47</span><span style="color: #000000">"/</span><span style="color: #000000">&gt;</span><span style="color: #000000"><br /></span><span style="color: #000000">&lt;</span><span style="color: #000000">/</span><span style="color: #000000">mx:Application&gt;</span></div></div>
<p>&nbsp;</p>
<p>把编译好的swf添加到页面就可以了。同上，Java web页面代码不变。</p><font style="background-color: #ffffff"></font></div></div></div></div><img src ="http://www.blogjava.net/ivanwan/aggbug/359611.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2011-09-27 14:53 <a href="http://www.blogjava.net/ivanwan/archive/2011/09/27/359611.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Flex页面跳转的五种实现方式</title><link>http://www.blogjava.net/ivanwan/archive/2011/09/27/359609.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Tue, 27 Sep 2011 06:47:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2011/09/27/359609.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/359609.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2011/09/27/359609.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/359609.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/359609.html</trackback:ping><description><![CDATA[<div class="brief bgF8F8F8">
<h1>Flex页面跳转的五种实现方式</h1>
<div class="msg">
<div>2010-08-13 13:25 Dboyqiao javaeye.com <span class="f12-a"><a href="http://developer.51cto.com/art/201008/218994.htm#commment" target="_self"><font color="#004276">我要评论(<span id="pinglun_1"></span>)</font></a></span> 字号：<span class="f14-b"><a href="javascript:setfont(12);" target="_self"><strong><font face="Arial" color="#004276">T</font></strong></a></span> | <span class="f16-b"><a href="javascript:setfont(16);" target="_self"><strong><font face="Arial" color="#004276">T</font></strong></a></span></div>
<div class="fav"><a title="一键收藏，随时查看，分享好友！" href="javascript:favorBox('open');" target="_self"><strong><font face="Arial" color="#004276"><img alt="一键收藏，随时查看，分享好友！" src="http://images.51cto.com/images/art/newart1012/images/Fav.gif" border="0" /></font></strong></a></div></div>
<div class="brieftext">
<p class="f14 green">Flex页面跳转有很多值得学习的地方，本文向大家介绍一下Flex页面跳转的几种方式，主要包括五种方式，这里为大家一一介绍。</p>
<p class="ad">AD： <script src="http://www.51cto.com/js/article/keywords_ad_new.js"></script></p></div></div>
<div class="tag bgF8F8F8" id="indexlist" style="display: none">
<ul id="indexliststr"></ul><br class="dle" /></div>
<div class="content bgF8F8F8 f14">
<div id="content">
<p>
<p>在学习Flex的过程中，你可能会遇到Flex页面跳转的概念，这里和大家分享一下Flex中实现Flex页面跳转以下几种方式，相信本文介绍一定会让你有所收获。</p>
<p><strong>Flex页面跳转</strong></p>
<p>Flex中实现Flex页面跳转以下几种方式：</p>
<p>Flex页面跳转方式一：使用ViewStack组件，把要跳转的页新建成MXMLComponent,然后通过ViewStack组件把这些页包含进来，然后再通过改变ViewStack的selectedItem或者selectedChild来切换这些页。</p><pre><ol class="dp-xml"><li class="alt"><span class="tag"><strong><font color="#006699">&lt;</font></strong></span><span class="attribute"><font color="#ff0000">mx:ViewStackid</font></span><span class="tag-name"><strong><font color="#006699">mx:ViewStackid</font></strong></span><span>="storeViews"</span><span class="attribute-value"><font color="#0000ff">width</font></span><span>="100%"</span><span class="attribute"><font color="#ff0000">height</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"550"</font></span><span>&nbsp;</span></li><li><span class="attribute"><font color="#ff0000">creationPolicy</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"all"</font></span><span class="tag"><strong><font color="#006699">&gt;</font></strong></span><span>&nbsp;</span></li><li class="alt"><span class="tag"><strong><font color="#006699">&lt;</font></strong></span><span class="attribute"><font color="#ff0000">shouyeid</font></span><span class="tag-name"><strong><font color="#006699">shouyeid</font></strong></span><span>="homeView"</span><span class="attribute-value"><font color="#0000ff">label</font></span><span>="首页"</span><span class="attribute"><font color="#ff0000">showEffect</font></span><span>="WipeDown"</span><span class="attribute-value"><font color="#0000ff">hideEffect</font></span><span>="WipeUp"</span><span class="tag"><strong><font color="#006699">/&gt;</font></strong></span><span>&nbsp;</span></li><li><span class="tag"><strong><font color="#006699">&lt;</font></strong></span><span class="attribute"><font color="#ff0000">leixingid</font></span><span class="tag-name"><strong><font color="#006699">leixingid</font></strong></span><span>="pView"</span><span class="attribute-value"><font color="#0000ff">label</font></span><span>="模板类型"</span><span class="attribute"><font color="#ff0000">showEffect</font></span><span>="WipeDown"</span><span class="attribute-value"><font color="#0000ff">hideEffect</font></span><span>="WipeUp"</span><span class="tag"><strong><font color="#006699">/&gt;</font></strong></span><span>&nbsp;</span></li><li class="alt"><span class="tag"><strong><font color="#006699">&lt;</font></strong></span><span class="attribute"><font color="#ff0000">makeid</font></span><span class="tag-name"><strong><font color="#006699">makeid</font></strong></span><span>="supportView"</span><span class="attribute-value"><font color="#0000ff">label</font></span><span>="立即制作"</span><span class="attribute"><font color="#ff0000">showEffect</font></span><span>="WipeDown"</span><span class="attribute-value"><font color="#0000ff">hideEffect</font></span><span>="WipeUp"</span><span class="tag"><strong><font color="#006699">/&gt;</font></strong></span><span>&nbsp;</span></li><li><strong><font color="#006699"><span class="tag">&lt;/</span><span class="tag-name">mx:ViewStack</span><span class="tag">&gt;</span></font></strong><span>&nbsp;</span></li><li class="alt"><span class="tag"><strong><font color="#006699">&lt;</font></strong></span><span class="attribute"><font color="#ff0000">mx:Buttonclick</font></span><span class="tag-name"><strong><font color="#006699">mx:Buttonclick</font></strong></span><span>=</span><span class="attribute-value"><font color="#0000ff">"storeViews.selectedChild=homeView;"</font></span><span class="tag"><strong><font color="#006699">/&gt;</font></strong></span><span>&nbsp;</span></li><li><span>&nbsp;</span></li></ol></pre>
<p>Flex页面跳转方式二：使用navigateToURL，主要方式如下：</p><pre><ol class="dp-xml"><li class="alt"><span class="attribute"><font color="#ff0000">varurl:String</font></span><span>="http://localhost:8080/Flex_Java_Demo/ &nbsp;</span></li><li><span>welcome.html"; &nbsp;</span></li><li class="alt"><span class="attribute"><font color="#ff0000">varrequest:URLRequest</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">newURLRequest</font></span><span>(url); &nbsp;</span></li><li><span>navigateToURL(request,"_blank"); &nbsp;</span></li><li class="alt"><span>&nbsp;</span></li></ol></pre>
<p>这个方法实现Flex页面切换时会弹出新的页面，而不是只变换url</p>
<p>Flex页面跳转方式三：引用flash中的importflash.external.ExternalInterface这个接口，它能提供像jsp中window.location.href方法一样方便，主要代码为：<br />&nbsp;</p><pre><ol class="dp-xml"><li class="alt"><span>ExternalInterface.call("function(){window.location. &nbsp;</span></li><li><span class="attribute"><font color="#ff0000">href</font></span><span>='http://localhost:8080/Flex_J2eeDemo &nbsp;</span></li><li class="alt"><span>/bin/Welcome.html';}"); &nbsp;</span></li></ol></pre>
<p>Flex页面跳转方式四：使用组件技术，把不同的页面做成component，然后通过TabNavigator等进行切换，通过使用state实现跳转。</p>
<p>Flex页面跳转方式五：把不同的页面做成Module，然后使用ModuleLoder来进行加载切换。</p>
<p>【编辑推荐】</p>
<ol><li><a href="http://developer.51cto.com/art/201008/217160.htm" target="_blank"><font color="#004276">实现Flex页面跳转行之有效的办法</font></a></li><li><a href="http://developer.51cto.com/art/201008/216766.htm" target="_blank"><font color="#004276">四种方式实现Flex页面跳转</font></a></li><li><a href="http://developer.51cto.com/art/201008/218690.htm" target="_blank"><font color="#004276">全面认识Flex应用程序的六大元素</font></a></li><li><a href="http://developer.51cto.com/art/201007/214543.htm" target="_blank"><font color="#004276">揭开Flex正则表达式的神秘面纱</font></a></li><li><a href="http://developer.51cto.com/art/201008/218597.htm" target="_blank"><font color="#004276">Flex数据绑定及其使用频繁的几种情况</font></a>&nbsp; </li></ol>
<p><br />&nbsp;</p>
<div align="right">【责任编辑：<a class="ln" href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;&#99;&#104;&#101;&#110;&#103;&#104;&#113;&#64;&#53;&#49;&#99;&#116;&#111;&#46;&#99;&#111;&#109;"><font color="#004276">程华权</font></a> TEL：（010）68476606】</div><br />
<p class="blank10"></p>
<div class="biaoqing fixfloat">
<ul><li><a href="javascript:getcountscom(218994,1)" target="_self"><img src="http://images.51cto.com/images/art1105/images/bq1.jpg"  alt="" /></a> 
<div><a href="javascript:getcountscom(218994,1)" target="_self"><font color="#004276">给力</font></a></div><span id="218994_1">(3票)</span> </li><li><a href="javascript:getcountscom(218994,2)" target="_self"><img src="http://images.51cto.com/images/art1105/images/bq2.jpg"  alt="" /></a> 
<div><a href="javascript:getcountscom(218994,2)" target="_self"><font color="#004276">动心</font></a></div><span id="218994_2">(1票)</span> </li><li><a href="javascript:getcountscom(218994,3)" target="_self"><img src="http://images.51cto.com/images/art1105/images/bq3.jpg"  alt="" /></a> 
<div><a href="javascript:getcountscom(218994,3)" target="_self"><font color="#004276">废话</font></a></div><span id="218994_3">(0票)</span> </li><li><a href="javascript:getcountscom(218994,4)" target="_self"><img src="http://images.51cto.com/images/art1105/images/bq4.jpg"  alt="" /></a> 
<div><a href="javascript:getcountscom(218994,4)" target="_self"><font color="#004276">专业</font></a></div><span id="218994_4">(0票)</span> </li><li><a href="javascript:getcountscom(218994,5)" target="_self"><img src="http://images.51cto.com/images/art1105/images/bq5.jpg"  alt="" /></a> 
<div><a href="javascript:getcountscom(218994,5)" target="_self"><font color="#004276">标题党</font></a></div><span id="218994_5">(0票)</span> </li><li><a href="javascript:getcountscom(218994,6)" target="_self"><img src="http://images.51cto.com/images/art1105/images/bq6.jpg"  alt="" /></a> 
<div><a href="javascript:getcountscom(218994,6)" target="_self"><font color="#004276">路过</font></a></div><span id="218994_6">(0票)</span> </li></ul></div><script language="javascript"> 
getcountscom(218994,11);
getcountscom(218994,12);
getcountscom(218994,13);
getcountscom(218994,14);
getcountscom(218994,15);
getcountscom(218994,16); 
</script>
<p class="blank10"></p>
<div class="f12"><span class="fl">原文：<a class="blue" href="http://developer.51cto.com/art/201008/218994.htm"><strong><font color="#004276">Flex页面跳转的五种实现方式</font></strong></a></span> <span class="fr"><a href="http://developer.51cto.com/"><font color="#004276">返回开发首页</font></a></span> </div>
<p class="blank1"></p></div>
<div class="tips">
<div class="fl">分享到： <span class="blue"><img src="http://v.t.qq.com/share/images/s/weiboicon16.png"  alt="" /><font color="#004276"> </font><a title="QQ微博" style="background-position: 0px -40px; cursor: pointer" target="_self"><font color="#004276">QQ微博</font></a><font color="#004276"><img src="http://qzonestyle.gtimg.cn/ac/qzone_v5/app/app_share/qz_logo.png"  alt="" /></font><a title="分享到QQ空间" href="http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=http://developer.51cto.com/art/201008/218994.htm"><font color="#004276">QQ空间</font></a><font color="#004276"><img src="http://images.51cto.com/images/art1105/images/kx.jpg"  alt="" /></font><a href="http://www.kaixin001.com/repaste/share.php?rurl=http://developer.51cto.com/art/201008/218994.htm&amp;rtitle=Flex页面跳转的五种实现方式" target="_blank"><font color="#004276">开心</font></a><font color="#004276"><img src="http://images.51cto.com/images/art1105/images/rr.jpg"  alt="" /></font><a title="分享到人人网" href="http://share.renren.com/share/buttonshare.do?link=http://developer.51cto.com/art/201008/218994.htm&amp;title=Flex页面跳转的五种实现方式"><font color="#004276">人人网</font></a><font color="#004276"><img height="16" src="http://images.51cto.com/files/uploadimg/20110428/145820640.gif" width="17"  alt="" /> </font><a title="豆瓣" style="background-position: 0px -120px; cursor: pointer" target="_self"><font color="#004276">豆瓣</font></a><font color="#004276"> <img src="http://images.51cto.com/images/art1105/images/sina.gif"  alt="" /></font><a title="分享到新浪微博" href="http://v.t.sina.com.cn/share/share.php?appkey=2378297317&amp;url=http://developer.51cto.com/art/201008/218994.htm&amp;title=Flex页面跳转的五种实现方式"><font color="#004276">新浪微博</font></a></span></div>
<div class="fr blue"><a href="javascript:AddFavorite(document.location.href,document.title);" target="_self">收藏</a>|<a href="javascript:window.print();" target="_self">打印</a>|<a id="msnqqcopy" title="分享本资源给好友" target="_self">复制</a></div></div></div><!--内容 end-->

<div class="bor">
<div class="titbg pl15">关于<a class="underline" href="http://www.51cto.com/php/search.php?keyword=Flex%D2%B3%C3%E6%CC%F8%D7%AA" target="_blank"><font color="#004276">Flex页面跳转</font></a>的更多文章</div>
<div class="reltag">
<ul class="fl list02"><li><a title="实现Flex页面跳转行之有效的办法" href="http://developer.51cto.com/art/201008/217160.htm"><font color="#004276">实现Flex页面跳转行之有效的办法</font></a></li><li><a title="Flex页面跳转实现的几种方式" href="http://developer.51cto.com/art/201008/216773.htm"><font color="#004276">Flex页面跳转实现的几种方式</font></a></li><li><a title="四种方式实现Flex页面跳转" href="http://developer.51cto.com/art/201008/216766.htm"><font color="#004276">四种方式实现Flex页面跳转</font></a> </li></ul>
<div class="fr">
<div class="h5 f12"><a title="双剑合璧 PHP+MySQL的最佳实践" href="http://developer.51cto.com/art/201106/266517.htm"><strong><font color="#004276">双剑合璧 PHP+MySQL的最佳实践</font></strong></a></div><a title="双剑合璧 PHP+MySQL的最佳实践" href="http://developer.51cto.com/art/201106/266517.htm"><font color="#004276"><img height="80" alt="双剑合璧 PHP+MySQL的最佳实践" src="http://images.51cto.com/files/uploadimg/20110601/173222681.png" width="100" border="0" /></font></a> 
<p class="c666">PHP语言和MySQL数据库这两种开源技术已经成为开发Web应用的最佳<a class="blue" title="双剑合璧 PHP+MySQL的最佳实践" href="http://developer.51cto.com/art/201106/266517.htm"><font color="#004276">[详细]</font></a></p></div></div><!--reltag end--></div>
<p class="blank10"><font color="#004276"></font></p>
<div class="bor">
<div class="f14 comm">
<h3 class="fl">网友评论<font color="#cc0000">TOP5</font></h3><span class="fr"><a href="http://www.51cto.com/php/feedbackt.php?id=218994"><font color="#004276">查看所有评论（<span id="pinglun_2"></span>）</font></a></span> </div>
<p class="blank1"></p>
<div class="blank1"></div>
<ul class="commlist"><script src="http://www.51cto.com/php/artcomment1105.php?artid=218994"></script></ul>
<div class="txt bgF8F8F8"><a name="commment"></a>
<dl>
<dt class="fl tlt">提交评论 
<dd><script src="http://www.51cto.com/authart.php?referer=http://developer.51cto.com/art/201008/218994.htm"></script>
<form style="padding-right: 0px; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px" action="http://www.51cto.com/login.php?referer=http://developer.51cto.com/art/201008/218994.htm" method="post" target="_self">通行证：<input size="10" name="username"  type="text" />&nbsp;密码：<input type="password" size="10" name="password" /><input class="test1" type="hidden" name="username2" />&nbsp;<input type="submit" value="登录" name="Submit" />&nbsp;&nbsp;<a href="http://ucenter.51cto.com/reg_01.php">注册通行证</a></form>
<form id="feedback" style="padding-right: 0px; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px" name="feedback" action="http://www.51cto.com/php/sendfeedback.php" method="post" target="_self"><input type="hidden" value="http://developer.51cto.com/art/201008/218994.htm" name="referer" /><input type="hidden" name="username" /><input class="test1" type="hidden" name="uid" /> <br /></dd></dl><script language="javascript" src="http://www.51cto.com/php/comments/nomal_k.php?id=218994&amp;arturl=http://developer.51cto.com/art/201008/218994.htm" type="text/javascript"></script><form id="feedback" style="padding-right: 0px; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px" name="feedback" action="http://www.51cto.com/php/sendfeedback.php" target="_self" method="post" onsubmit="return commentSubmit(this)"><textarea class="txtinput" id="msg" style="height: 88px" name="msg"></textarea><br />
<table cellspacing="0" cellpadding="0" width="99%" border="0">
<tbody>
<tr>
<td colspan="6" height="6"><input type="hidden" value="218994" name="artID" /><input type="hidden" value="0" name="quick" /><input type="hidden" value="51CTO网友" name="author2" /></td></tr>
<tr>
<td width="9%">验证码：</td>
<td width="11%"><input class="test3" name="authnum"  type="text" /></td>
<td width="51%"><img id="secunum" style="display: none; vertical-align: middle"  alt="" /><span id="spanfont" style="display: none">点击图片可刷新验证码</span><span id="clickfont" style="display: inline">请点击后输入验证码</span></td>
<td width="4%"><input type="checkbox" value="1" name="nouser" /></td>
<td width="12%">匿名发表</td>
<td width="13%"><input type="image" src="http://new.51cto.com/wuyou/kelly_newart/images/tijiao.gif" name="Submit32" /></td></tr>
<tr>
<td colspan="6" height="6"></td></tr></tbody></table></form></div></div><!--box end-->

<p class="blank10"></p>
<div class="relart fl bor">
<div class="titbg">
<h3 class="fl t1">栏目热门</h3><a class="tmore" href="http://developer.51cto.com/click/1447">更多&gt;&gt;</a></div>
<ul><li><a title="HTML 5的革新：结构之美" href="http://developer.51cto.com/art/201104/254725.htm">HTML 5的革新：结构之美</a></li><li><a title="Silverlight 5，你的名字是&#8220;Windows&#8221;" href="http://developer.51cto.com/art/201104/255954.htm">Silverlight 5，你的名字是&#8220;Windows&#8221;</a></li><li><a title="Flash真的适合做网站应用吗？" href="http://developer.51cto.com/art/201104/255445.htm">Flash真的适合做网站应用吗？</a></li><li><a title="万维网创立者：HTML 5为未来网络技术埋下隐患" href="http://developer.51cto.com/art/201104/256019.htm">万维网创立者：HTML 5为未来网络技术埋下隐</a></li><li><a title="微软发布Silverlight 5 beta 附下载" href="http://developer.51cto.com/art/201104/255247.htm">微软发布Silverlight 5 beta 附下载</a> </li></ul></div>
<div class="cathot fr bor">
<div class="titbg">
<h3 class="fl t1">同期最新</h3><a class="tmore" href="http://developer.51cto.com/col/1447">更多&gt;&gt;</a></div>
<ul><li><a title="解析Flex应用程序连接数据的实现" href="http://developer.51cto.com/art/201008/218992.htm">解析Flex应用程序连接数据的实现</a></li><li><a title="常用Flex图表组件集锦" href="http://developer.51cto.com/art/201008/218989.htm">常用Flex图表组件集锦</a></li><li><a title="创建一个Flex应用程序简明步骤" href="http://developer.51cto.com/art/201008/218988.htm">创建一个Flex应用程序简明步骤</a></li><li><a title="两种Flex弹出窗口用法指南" href="http://developer.51cto.com/art/201008/218986.htm">两种Flex弹出窗口用法指南</a></li><li><a title="Flex自定义事件用法指南" href="http://developer.51cto.com/art/201008/218947.htm">Flex自定义事件用法指南</a> </li></ul></div>
<p class="blank10"></p>
<div class="bor">
<div class="titbg">
<h3 class="fl t1"><a href="http://developer.51cto.com/"><font color="#004276">开发</font></a></h3><span class="pl10">频道导航</span></div>
<ul class="xtlist"><li><span class="tit">Java</span> 
<div><a href="http://developer.51cto.com/java/"><font color="#004276">Java开发</font></a>|<a href="http://developer.51cto.com/col/1005/"><font color="#004276">Java基础</font></a>|<a href="http://developer.51cto.com/col/1014/"><font color="#004276">Java EE开发</font></a>|<a href="http://developer.51cto.com/col/1004/"><font color="#004276">Java框架</font></a>|<a href="http://developer.51cto.com/col/1007/"><font color="#004276">设计模式</font></a></div></li><li><span class="tit">WEB开发</span> 
<div><a href="http://developer.51cto.com/col/1441/"><font color="#004276">PHP开发</font></a>|<a href="http://developer.51cto.com/col/1455/"><font color="#004276">Python</font></a>|<a href="http://developer.51cto.com/col/1552/"><font color="#004276">Ruby</font></a>|<a href="http://developer.51cto.com/col/1552/"><font color="#004276">JSP</font></a>|<a href="http://developer.51cto.com/art/200907/133407.htm"><font color="#004276">HTML 5</font></a>|<a href="http://developer.51cto.com/col/1450/"><font color="#004276">DIV+CSS</font></a></div></li><li class="last"><span class="tit">综合</span> 
<div><a href="http://developer.51cto.com/net/"><font color="#004276">.NET开发</font></a>|<a href="http://developer.51cto.com/embed/"><font color="#004276">嵌入式开发</font></a>|<a href="http://developer.51cto.com/col/586/"><font color="#004276">项目管理</font></a>|<a href="http://developer.51cto.com/col/1308/"><font color="#004276">架构设计</font></a></div></li></ul></div>
<p class="blank10"><font color="#004276"></font></p>
<div class="leftbotcon">
<div class="bor jdlist">
<div class="titbg">
<h3 class="t2">热点推荐</h3></div>
<ul><li><a href="http://mobile.51cto.com/mobile-182392.htm"><img src="http://images.51cto.com/files/uploadimg/20100202/153546162.jpg"  alt="" /></a> 
<div class="name"><a href="http://mobile.51cto.com/mobile-182392.htm">Android开发应用详解</a></div></li><li><a href="http://developer.51cto.com/art/201106/266369.htm"><img src="http://images.51cto.com/files/uploadimg/20110608/133620622.jpg"  alt="" /></a> 
<div class="name"><a href="http://developer.51cto.com/art/201106/266369.htm">那些性感的让人尖叫的程序员</a></div></li><li><a href="http://developer.51cto.com/art/200907/133407.htm"><img src="http://images.51cto.com/files/uploadimg/20090702/134217922.jpg"  alt="" /></a> 
<div class="name"><a href="http://developer.51cto.com/art/200907/133407.htm">HTML5 下一代Web开发标准详解</a></div></li><li><a href="http://developer.51cto.com/art/201104/257581.htm"><img src="http://images.51cto.com/files/uploadimg/20110426/123123954.jpg"  alt="" /></a> 
<div class="name"><a href="http://developer.51cto.com/art/201104/257581.htm">高性能WEB开发应用指南</a></div></li><li><a href="http://os.51cto.com/art/200706/49181.htm"><img src="http://images.51cto.com/files/uploadimg/20070613/195816929.jpg"  alt="" /></a> 
<div class="name"><a href="http://os.51cto.com/art/200706/49181.htm">Ubuntu开源技术交流频道</a></div></li></ul></div>
<p class="blank10"></p>
<div class="bor hotTag"><strong>热门标签：</strong> <a href="http://os.51cto.com/windows/"><font color="#004276">windows频道</font></a><a href="http://mobile.51cto.com/"><font color="#004276">移动开发</font></a><a href="http://cloud.51cto.com/"><font color="#004276">云计算</font></a><a href="http://mobile.51cto.com/android-227548.htm"><font color="#004276">eclipse android</font></a><a href="http://network.51cto.com/art/200909/151122.htm"><font color="#004276">tp-link路由器设置图解</font></a><a href="http://developer.51cto.com/art/200907/133407.htm"><font color="#004276">html5</font></a> </div></div><img src ="http://www.blogjava.net/ivanwan/aggbug/359609.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2011-09-27 14:47 <a href="http://www.blogjava.net/ivanwan/archive/2011/09/27/359609.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>flash builder 4.5注册方法</title><link>http://www.blogjava.net/ivanwan/archive/2011/09/26/359546.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Mon, 26 Sep 2011 09:28:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2011/09/26/359546.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/359546.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2011/09/26/359546.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/359546.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/359546.html</trackback:ping><description><![CDATA[<span class="Apple-style-span" style="font-family: Arial; font-size: 12px; line-height: 18px; background-color: #f3fafd; "><div class="tit" style="font-family: Arial; word-wrap: break-word; word-break: break-all; visibility: visible !important; zoom: 1 !important; filter: none; font-size: 14px; line-height: 26px; font-weight: bold; text-align: left; border-left-width: 5px; border-left-style: solid; border-left-color: #87b8de; text-indent: 8px; overflow-x: hidden; overflow-y: hidden; ">flash builder 4.5注册方法</div><div class="date" style="font-family: Verdana; word-wrap: break-word; word-break: break-all; visibility: visible !important; zoom: 1 !important; filter: none; font-size: 10px; line-height: 18px; margin-top: 0px; margin-right: 0px; margin-bottom: 8px; margin-left: 12px; color: #888888; text-align: left; ">2011-06-30 12:53</div><table style="table-layout: fixed; width: 898px; "><tbody><tr><td style="font-family: Arial; word-wrap: break-word; word-break: break-all; visibility: visible !important; zoom: 1 !important; filter: none; font-size: 12px; line-height: 18px; "><div id="blog_text" class="cnt" style="font-family: Arial; word-wrap: break-word; word-break: normal; visibility: visible !important; zoom: 1 !important; filter: none; font-size: 12px; line-height: 18px; overflow-x: hidden; overflow-y: hidden; position: relative !important; "><p style="line-height: normal; ">先在C:\Windows\System32\drivers\etc的hosts文件中添加以下内容，（用记事本打开就行）：<br style="line-height: normal; " /><br style="line-height: normal; " />127.0.0.1 activate.adobe.com<br style="line-height: normal; " />127.0.0.1 practivate.adobe.com<br style="line-height: normal; " />127.0.0.1 ereg.adobe.com<br style="line-height: normal; " />127.0.0.1 activate.wip3.adobe.com<br style="line-height: normal; " />127.0.0.1 wip3.adobe.com<br style="line-height: normal; " />127.0.0.1 3dns-3.adobe.com<br style="line-height: normal; " />127.0.0.1 3dns-2.adobe.com<br style="line-height: normal; " />127.0.0.1 adobe-dns.adobe.com<br style="line-height: normal; " />127.0.0.1 adobe-dns-2.adobe.com<br style="line-height: normal; " />127.0.0.1 adobe-dns-3.adobe.com<br style="line-height: normal; " />127.0.0.1 ereg.wip3.adobe.com<br style="line-height: normal; " />127.0.0.1 activate-sea.adobe.com<br style="line-height: normal; " />127.0.0.1 wwis-dubc1-vip60.adobe.com<br style="line-height: normal; " />127.0.0.1 activate-sjc0.ado<br style="line-height: normal; " /><br style="line-height: normal; " /><br style="line-height: normal; " />这是注册：<br style="line-height: normal; " />1424-4938-3077-5736-3940-5640<br style="line-height: normal; " />1424-4827-8874-7387-0243-7331</p></div></td></tr></tbody></table></span><img src ="http://www.blogjava.net/ivanwan/aggbug/359546.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2011-09-26 17:28 <a href="http://www.blogjava.net/ivanwan/archive/2011/09/26/359546.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>flash builder 4.5</title><link>http://www.blogjava.net/ivanwan/archive/2011/09/26/359545.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Mon, 26 Sep 2011 08:58:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2011/09/26/359545.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/359545.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2011/09/26/359545.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/359545.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/359545.html</trackback:ping><description><![CDATA[<span class="Apple-style-span" style="color: #333333; font-family: Arial; line-height: 26px; background-color: #ffffff; "><h1 style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><a title="Flash 搜索该标签相关文章" href="http://www.bokee.net/searchmodule/weblogtag/search_search.do?query=h1&amp;type=3" style="color: #336699; text-decoration: none; "><span><strong>Flash</strong></span></a>&nbsp;Builder 4.5高级版试用版免费高速下载</h1><p class="info">Company:&nbsp;<strong>Adobe</strong></p><p class="vcr-cover-img"><img src="http://www.infoq.com/resource/vcr/1445/cover/cover_FB4.jpg;jsessionid=3AC1DF64EAD7CBC473E2DDBE464DD2A1" alt="vcr.cover" style="border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; " /></p><p class="vcr-cover-img">官方下载地址：<a href="http://trials3.adobe.com/AdobeProducts/FLBR/4_5/win32/FlashBuilder_4_5_LS10.exe" target="_blank" style="color: #336699; text-decoration: none; ">http://trials3.adobe.com/AdobeProducts/FLBR/4_5/win32/FlashBuilder_4_5_LS10.exe</a></p><div>1424-4827-8874-7387-0243-7331</div><div>1424-4938-3077-5736-3940-5640</div><div>&nbsp;</div><p>FB4.5 序列号 Flex4.5&nbsp;&nbsp; 5月17日发布，本人的用第一个已经激活成功，大家看看还能用不。</p><p>Adobe Flash Builder 4.5 软件（曾为 Adobe Flex&nbsp;<a title="Builder 搜索该标签相关文章" href="http://www.bokee.net/searchmodule/weblogtag/search_search.do?query=p&amp;type=3" style="color: #336699; text-decoration: none; "><span><strong>Builder</strong></span></a>）是基于 Eclipse的开发工具，使用 ActionScript 和开源 Flex 框架快速构建具有表现力的移动、Web 和桌面应用程序。</p><p><strong>最具表现力的体验</strong></p><p>创建更直观和更具吸引力的 Web 应用程序，帮助人们理解并使用数据以支持重要的业务活动，从而提高生产力和工作效率。</p><p><strong>用于 Android、iOS 和 RIM 的移动应程序</strong></p><p>受益于对移动应用程序开发和测试的新支持，可以使用通用代码库构建用于 Android、Apple iOS和 Blackberry Tablet OS的应用程序，同时共享 Web 应用程序的代码。</p><p><strong>更具生产力，功能更强大</strong></p><p>使用广泛新工具功能和改进的工具功能加速 Flex 和 ActionScript 项目的代码编写和测试过程。</p><p><strong>新集成的 PHP 工具支持</strong></p><p>使用 Flash Builder 4.5 for PHP 中的 Zend Studio 8 软件完整副本，获得最佳的 Flex/PHP 开发体验。</p><h2 style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">Adobe官方下载（本地服务器）</h2><ul><li>Flash Builder 4.5高级版试用版（Windows，581.2M，点击<a href="http://www.infoq.com/cn/vendorcontent/show.action?vcr=1454" style="color: #336699; text-decoration: none; ">免费高速下载</a>）</li><li>Flash Builder 4.5高级版试用版（Mac，679.8M，点击<a href="http://www.infoq.com/cn/vendorcontent/show.action?vcr=1455" style="color: #336699; text-decoration: none; ">免费高速下载</a>）</li><li>Flash Builder 4.5 for PHP高级版试用版（Windows，956.5M，点击<a href="http://www.infoq.com/cn/vendorcontent/show.action?vcr=1456" style="color: #336699; text-decoration: none; ">免费高速下载</a>）</li><li>Flash Builder 4.5 for PHP高级版试用版免费（Mac，911.3M，点击<a href="http://www.infoq.com/cn/vendorcontent/show.action?vcr=1457" style="color: #336699; text-decoration: none; ">免费高速下载</a>）</li></ul><h2 style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; ">Adobe官方下载（国外服务器）</h2><ul><li>Flash Builder 4.5高级版试用版（Windows和Mac版本，<a href="http://www.adobe.com/cfusion/tdrc/index.cfm?product=flash_builder&amp;loc=zh_cn" style="color: #336699; text-decoration: none; ">免费高速下载</a>）</li><li>Flash Builder 4.5 for PHP高级版试用版（Windows和Mac版本，<a href="http://www.adobe.com/cfusion/tdrc/index.cfm?product=flash_builder_php&amp;loc=zh_cn" style="color: #336699; text-decoration: none; ">免费高速下载</a>）<strong><br /></strong></li></ul><p>本文件大小为581.2M，Adobe独家提供本地高速下载，您可以通过<strong>浏览器直接点击下载</strong>或者通过下载加速器（如迅雷、QQ旋风）下载，实际的下载速度和您的实际网络环境相关。考虑到文件较大，我们推荐您使用具有断点续传功能的下载加速器辅助下载。</p><p>官方下载地址：<a href="http://trials3.adobe.com/AdobeProducts/FLBR/4_5/win32/FlashBuilder_4_5_LS10.exe" target="_blank" style="color: #336699; text-decoration: none; ">http://trials3.adobe.com/AdobeProducts/FLBR/4_5/win32/FlashBuilder_4_5_LS10.exe</a></p><div>1424-4827-8874-7387-0243-7331</div><div>1424-4938-3077-5736-3940-5640</div><div>&nbsp;</div><p>FB4.5 序列号 Flex4.5&nbsp;&nbsp; 5月17日发布，本人的用第一个已经激活成功，大家看看还能用不。</p></span><img src ="http://www.blogjava.net/ivanwan/aggbug/359545.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2011-09-26 16:58 <a href="http://www.blogjava.net/ivanwan/archive/2011/09/26/359545.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Nginx 简单的负载均衡配置示例[转贴]</title><link>http://www.blogjava.net/ivanwan/archive/2011/08/16/356619.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Tue, 16 Aug 2011 03:55:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2011/08/16/356619.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/356619.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2011/08/16/356619.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/356619.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/356619.html</trackback:ping><description><![CDATA[<div><a href="http://www.s135.com" target="_blank">www.s135.com</a> 和 blog.s135.com 域名均指向 Nginx 所在的服务器IP。<br /><br />　　用户访问<a href="http://www.s135.com" target="_blank">http://www.s135.com</a>，将其负载均衡到192.168.1.2:80、192.168.1.3:80、192.168.1.4:80、192.168.1.5:80四台服务器。<br /><br />　　用户访问<a href="http://blog.s135.com" target="_blank">http://blog.s135.com</a>，将其负载均衡到192.168.1.7服务器的8080、8081、8082端口。<br /><br />　　以下为配置文件nginx.conf：<br /><a name="entrymore"></a><br /><div><div>引用</div><div>user &nbsp;www www;<br /><br />worker_processes 10;<br /><br />#error_log &nbsp;logs/error.log;<br />#error_log &nbsp;logs/error.log &nbsp;notice;<br />#error_log &nbsp;logs/error.log &nbsp;info;<br /><br />#pid &nbsp; &nbsp; &nbsp; &nbsp;logs/nginx.pid;<br /><br />#最大文件描述符<br />worker_rlimit_nofile 51200;<br /><br />events <br />{<br /> &nbsp; &nbsp; &nbsp; use epoll;<br /><br /> &nbsp; &nbsp; &nbsp; worker_connections 51200;<br />}<br /><br />http <br />{<br /> &nbsp; &nbsp; &nbsp; include &nbsp; &nbsp; &nbsp; conf/mime.types;<br /> &nbsp; &nbsp; &nbsp; default_type &nbsp;application/octet-stream;<br /><br /> &nbsp; &nbsp; &nbsp; keepalive_timeout 120;<br /><br /> &nbsp; &nbsp; &nbsp; tcp_nodelay on;<br /><br /> &nbsp; &nbsp; &nbsp; upstream &nbsp;<a href="http://www.s135.com" target="_blank">www.s135.com</a> &nbsp;{<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; server &nbsp; 192.168.1.2:80;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; server &nbsp; 192.168.1.3:80;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; server &nbsp; 192.168.1.4:80;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; server &nbsp; 192.168.1.5:80;<br /> &nbsp; &nbsp; &nbsp; }<br /><br /> &nbsp; &nbsp; &nbsp; upstream &nbsp;blog.s135.com &nbsp;{<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; server &nbsp; 192.168.1.7:8080;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; server &nbsp; 192.168.1.7:8081;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; server &nbsp; 192.168.1.7:8082;<br /> &nbsp; &nbsp; &nbsp; }<br /><br /> &nbsp; &nbsp; &nbsp; server<br /> &nbsp; &nbsp; &nbsp; {<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; listen &nbsp;80;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; server_name &nbsp;<a href="http://www.s135.com;" target="_blank">www.s135.com;</a><br /><br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; location / {<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proxy_pass &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://www.s135.com;" target="_blank">http://www.s135.com;</a><br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proxy_set_header &nbsp; Host &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $host;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proxy_set_header &nbsp; X-Real-IP &nbsp; &nbsp; &nbsp; &nbsp;$remote_addr;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proxy_set_header &nbsp; X-Forwarded-For &nbsp;$proxy_add_x_forwarded_for;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br /><br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; log_format &nbsp;www_s135_com &nbsp;'$remote_addr - $remote_user [$time_local] $request '<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '"$status" $body_bytes_sent "$http_referer" '<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '"$http_user_agent" "$http_x_forwarded_for"';<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; access_log &nbsp;/data1/logs/www.log &nbsp;www_s135_com;<br /> &nbsp; &nbsp; &nbsp; }<br /><br /> &nbsp; &nbsp; &nbsp; server<br /> &nbsp; &nbsp; &nbsp; {<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; listen &nbsp;80;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; server_name &nbsp;blog.s135.com;<br /><br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; location / {<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proxy_pass &nbsp; &nbsp; &nbsp; &nbsp;<a href="http://blog.s135.com;" target="_blank">http://blog.s135.com;</a><br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proxy_set_header &nbsp; Host &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $host;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proxy_set_header &nbsp; X-Real-IP &nbsp; &nbsp; &nbsp; &nbsp;$remote_addr;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;proxy_set_header &nbsp; X-Forwarded-For &nbsp;$proxy_add_x_forwarded_for;<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br /><br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; log_format &nbsp;blog_s135_com &nbsp;'$remote_addr - $remote_user [$time_local] $request '<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '"$status" $body_bytes_sent "$http_referer" '<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '"$http_user_agent" "$http_x_forwarded_for"';<br /> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; access_log &nbsp;/data1/logs/blog.log &nbsp;blog_s135_com;<br /> &nbsp; &nbsp; &nbsp; }<br />}</div></div><br />　　附：Nginx 的安装方法可参照《<a href="http://blog.s135.com/read.php/297.htm" target="_blank">Nginx 0.5.31 + PHP 5.2.4（FastCGI）搭建可承受3万以上并发连接数，胜过Apache 10倍的Web服务器</a>》文章的以下段落（仅做负载均衡，无需支持PHP的安装方法）：<br /><br />　　<span style="font-family: 楷体_GB2312;">二、安装PHP 5.2.4（FastCGI模式）<br />　　4、创建www用户和组，以及其使用的目录：<br /><br />　　三、安装Nginx 0.5.31<br />　　1、安装Nginx所需的pcre库：<br />　　2、安装Nginx<br />　　3、创建Nginx日志目录<br />　　5、启动Nginx</span>  <center></center></div><img src ="http://www.blogjava.net/ivanwan/aggbug/356619.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2011-08-16 11:55 <a href="http://www.blogjava.net/ivanwan/archive/2011/08/16/356619.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>电脑常用端口对照表</title><link>http://www.blogjava.net/ivanwan/archive/2011/06/20/352686.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Mon, 20 Jun 2011 12:17:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2011/06/20/352686.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/352686.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2011/06/20/352686.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/352686.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/352686.html</trackback:ping><description><![CDATA[<div>如果有不明白的地方或者陌生的端口可以在这里查到。以便于检查系统是否感染病毒或木马。但是在有防火墙的情况下，一般的防火墙都是严格审核程序的网络连接 的，所以会预先封闭所有的端口，有需要访问网络的程序会预先向防火墙提出申请，防火墙做出响应，并弹出提示，要求用户做出选择，这时候我们就要认真看了， 是哪一个程序，在文件夹的哪一个位置，要做一个估计，陌生程序就更要检查。这样才能不给恶意程序任何余地。同时系统自动升级最好打开，或者定期到 windows的微软网站下载系统更新程序，这样也非常有利于系统安全。系统漏洞可能会使恶意程序通过系统漏洞绕过防火墙连接到网络。<br /><br />端口：1 <br />服务：tcpmux <br />说 明：这显示有人在寻找sgi  irix机器。irix是实现tcpmux的主要提供者，默认情况下tcpmux在这种系统中被打开。irix机器在发布是含有几个默认的无密码的帐户， 如：ip、guest uucp、nuucp、demos  、tutor、diag、outofbox等。许多管理员在安装后忘记删除这些帐户。因此hacker在internet上搜索tcpmux并利用这些帐 户。 <br /><br />端口：7 <br />服务：echo <br />说明：能看到许多人搜索fraggle放大器时，发送到x.x.x.0和x.x.x.255的信息。 <br /><br />端口：19 <br />服务：character generator <br />说 明：这是一种仅仅发送字符的服务。udp版本将会在收到udp包后回应含有**字符的包。tcp连接时会发送含有**字符的数据流直到连接关闭。 hacker利用ip欺骗可以发动dos攻击。伪造两个chargen服务器之间的udp包。同样fraggle  dos攻击向目标地址的这个端口广播一个带有伪造受害者ip的数据包，受害者为了回应这些数据而过载。 <br /><br />端口：21 <br />服务：ftp <br />说 明：ftp服务器所开放的端口，用于上传、下载。最常见的攻击者用于寻找打开anonymous的ftp服务器的方法。这些服务器带有可读写的目录。木马 doly trojan、fore、invisible ftp、webex、wincrash和blade runner所开放的端口。 <br /><br />端口：22 <br />服务：ssh <br />说明：pcanywhere建立的tcp和这一端口的连接可能是为了寻找ssh。这一服务有许多弱点，如果配置成特定的模式，许多使用rsaref库的版本就会有不少的漏洞存在。 <br /><br />端口：23 <br />服务：telnet <br />说明：远程登录，入侵者在搜索远程登录unix的服务。大多数情况下扫描这一端口是为了找到机器运行的操作系统。还有使用其他技术，入侵者也会找到密码。木马tiny telnet server就开放这个端口。 <br /><br />端口：25 <br />服务：smtp <br />说 明：smtp服务器所开放的端口，用于发送邮件。入侵者寻找smtp服务器是为了传递他们的spam。入侵者的帐户被关闭，他们需要连接到高带宽的 e－mail服务器上，将简单的信息传递到不同的地址。木马antigen、email password sender、haebu  coceda、shtrilitz stealth、winpc、winspy都开放这个端口。 <br /><br />端口：31 <br />服务：msg authentication <br />说明：木马master paradise、hackers paradise开放此端口。 <br /><br />端口：42 <br />服务：wins replication <br />说明：wins复制 <br /><br />端口：53 <br />服务：domain name server（dns） <br />说明：dns服务器所开放的端口，入侵者可能是试图进行区域传递（tcp），欺骗dns（udp）或隐藏其他的通信。因此防火墙常常过滤或记录此端口。 <br /><br />端口：67 <br />服务：bootstrap protocol server <br />说 明：通过dsl和cable  modem的防火墙常会看见大量发送到广播地址255.255.255.255的数据。这些机器在向dhcp服务器请求一个地址。hacker常进入它 们，分配一个地址把自己作为局部路由器而发起大量中间人（man－in－middle）攻击。客户端向68端口广播请求配置，服务器向67端口广播回应请 求。这种回应使用广播是因为客户端还不知道可以发送的ip地址。 <br /><br />端口：69 <br />服务：trival file transfer <br />说明：许多服务器与bootp一起提供这项服务，便于从系统下载启动代码。但是它们常常由于错误配置而使入侵者能从系统中窃取任何 文件。它们也可用于系统写入文件。 <br /><br />端口：79 <br />服务：finger server <br />说明：入侵者用于获得用户信息，查询操作系统，探测已知的缓冲区溢出错误，回应从自己机器到其他机器finger扫描。 <br /><br />端口：80 <br />服务：http <br />说明：用于网页浏览。木马executor开放此端口。 <br /><br />端口：99 <br />服务：metagram relay <br />说明：后门程序ncx99开放此端口。 <br /><br />端口：102 <br />服务：message transfer agent(mta)－x.400 over tcp/ip <br />说明：消息传输代理。 <br /><br />端口：109 <br />服务：post office protocol －version3 <br />说明：pop3服务器开放此端口，用于接收邮件，客户端访问服务器端的邮件服务。pop3服务有许多公认的弱点。关于用户名和密码交 换缓冲区溢出的弱点至少有20个，这意味着入侵者可以在真正登陆前进入系统。成功登陆后还有其他缓冲区溢出错误。 <br /><br />端口：110 <br />服务：sun公司的rpc服务所有端口 <br />说明：常见rpc服务有rpc.mountd、nfs、rpc.statd、rpc.csmd、rpc.ttybd、amd等 <br /><br />端口：113 <br />服务：authentication service <br />说 明：这是一个许多计算机上运行的协议，用于鉴别tcp连接的用户。使用标准的这种服务可以获得许多计算机的信息。但是它可作为许多服务的记录器，尤其是 ftp、pop、imap、smtp和irc等服务。通常如果有许多客户通过防火墙访问这些服务，将会看到许多这个端口的连接请求。记住，如果阻断这个端 口客户端会感觉到在防火墙另一边与e－mail服务器的缓慢连接。许多防火墙支持tcp连接的阻断过程中发回rst。这将会停止缓慢的连接。 <br /><br />端口：119 <br />服务：network news transfer protocol <br />说明：news新闻组传输协议，承载usenet通信。这个端口的连接通常是人们在寻找usenet服务器。多数isp限制，只有他们的客户才能访问他们的新闻组服务器。打开新闻组服务器将允许发/读任何人的帖子，访问被限制的新闻组服务器，匿名发帖或发送spam。 <br /><br />端口：135 <br />服务：本地 service <br />说 明：microsoft在这个端口运行dce rpc end－point mapper为它的dcom服务。这与unix  111端口的功能很相似。使用dcom和rpc的服务利用计算机上的end－point  mapper注册它们的位置。远端客户连接到计算机时，它们查找end－point  mapper找到服务的位置。hacker扫描计算机的这个端口是为了找到这个计算机上运行exchange  server吗？什么版本？还有些dos攻击直接针对这个端口。 <br /><br />端口：137、138、139 <br />服务：netbios name service <br />说明：其中137、138是udp端口，当通过网上邻居传输文件时用这个端口。而139端口：通过这个端口进入的连接试图获得netbios/smb服务。这个协议被用于windows文件和打印机共享和samba。还有wins regisrtation也用它。 <br /><br />端口：143 <br />服务：interim mail access protocol v2 <br />说 明：和pop3的安全问题一样，许多imap服务器存在有缓冲区溢出漏洞。记住：一种linux蠕虫（admv0rm）会通过这个端口繁殖，因此许多这个 端口的扫描来自不知情的已经被感染的用户。当redhat在他们的linux发布版本中默认允许imap后，这些漏洞变的很流行。这一端口还被用于 imap2，但并不流行。 <br /><br />端口：161 <br />服务：snmp <br />说明：snmp允许远程管理设备。所有配置和运行信息的储存 在数据库中，通过snmp可获得这些信息。许多管理员的错误配置将被暴露在internet。cackers将试图使用默认的密码public、 private访问系统。他们可能会试验所有可能的组合。snmp包可能会被错误的指向用户的网络。 <br /><br />端口：177 <br />服务：x display manager control protocol <br />说明：许多入侵者通过它访问x－windows操作台，它同时需要打开6000端口。 <br /><br />端口：389 <br />服务：ldap、ils <br />说明：轻型目录访问协议和netmeeting internet locator server共用这一端口。 <br /><br />端口：443 <br />服务：https <br />说明：网页浏览端口，能提供加密和通过安全端口传输的另一种http。 <br /><br />端口：456 <br />服务：【null】 <br />说明：木马hackers paradise开放此端口。 <br /><br />端口：513 <br />服务：login,remote login <br />说明：是从使用cable modem或dsl登陆到子网中的unix计算机发出的广播。这些人为入侵者进入他们的系统提供了信息。 <br /><br />端口：544 <br />服务：【null】 <br />说明：kerberos kshell <br /><br />端口：548 <br />服务：macintosh,file services(afp/ip) <br />说明：macintosh,文件服务。 <br /><br />端口：553 <br />服务：corba iiop （udp） <br />说明：使用cable modem、dsl或vlan将会看到这个端口的广播。corba是一种面向对象的rpc系统。入侵者可以利用这些信息进入系统。 <br /><br />端口：555 <br />服务：dsf <br />说明：木马phase1.0、stealth spy、inikiller开放此端口。 <br /><br />端口：568 <br />服务：membership dpa <br />说明：成员资格 dpa。 <br /><br />端口：569 <br />服务：membership msn <br />说明：成员资格 msn。 <br /><br />端口：635 <br />服务：mountd <br />说 明：linux的mountd  bug。这是扫描的一个流行bug。大多数对这个端口的扫描是基于udp的，但是基于tcp的mountd有所增加（mountd同时运行于两个端口）。 记住mountd可运行于任何端口（到底是哪个端口，需要在端口111做portmap查询），只是linux默认端口是635，就像nfs通常运行于 2049端口。 <br /><br />端口：636 <br />服务：ldap <br />说明：ssl（secure sockets layer） <br /><br />端口：666 <br />服务：doom id software <br />说明：木马attack ftp、satanz backdoor开放此端口 <br /><br />端口：993 <br />服务：imap <br />说明：ssl（secure sockets layer） <br /><br />端口：1001、1011 <br />服务：【null】 <br />说明：木马silencer、webex开放1001端口。木马doly trojan开放1011端口。 <br /><br />端口：1024 <br />服务：reserved <br />说 明：它是动态端口的开始，许多程序并不在乎用哪个端口连接网络，它们请求系统为它们分配下一个闲置端口。基于这一点分配从端口1024开始。这就是说第一 个向系统发出请求的会分配到1024端口。你可以重启机器，打开telnet，再打开一个窗口运行natstat －a  将会看到telnet被分配1024端口。还有sql session也用此端口和5000端口。 <br /><br />端口：1025、1033 <br />服务：1025：network blackjack 1033：【null】 <br />说明：木马netspy开放这2个端口。 <br /><br />端口：1080 <br />服务：socks <br />说 明：这一协议以通道方式穿过防火墙，允许防火墙后面的人通过一个ip地址访问internet。理论上它应该只允许内部的通信向外到达internet。 但是由于错误的配置，它会允许位于防火墙外部的攻击穿过防火墙。wingate常会发生这种错误，在加入irc聊天室时常会看到这种情况。<br />端口：1170 <br />服务：【null】 <br />说明：木马streaming audio trojan、psyber stream server、voice开放此端口。 <br /><br />端口：1234、1243、6711、6776 <br />服务：【null】 <br />说明：木马subseven2.0、ultors trojan开放1234、6776端口。木马subseven1.0/1.9开放1243、6711、6776端口。 <br /><br />端口：1245 <br />服务：【null】 <br />说明：木马vodoo开放此端口。 <br /><br />端口：1433 <br />服务：sql <br />说明：microsoft的sql服务开放的端口。 <br /><br />端口：1492 <br />服务：stone－design－1 <br />说明：木马ftp99cmp开放此端口。 <br /><br />端口：1500 <br />服务：rpc client fixed port session queries <br />说明：rpc客户固定端口会话查询 <br /><br />端口：1503 <br />服务：netmeeting t.120 <br />说明：netmeeting t.120 <br /><br />端口：1524 <br />服务：ingress <br />说 明：许多攻击脚本将安装一个后门shell于这个端口，尤其是针对sun系统中sendmail和rpc服务漏洞的脚本。如果刚安装了防火墙就看到在这个 端口上的连接企图，很可能是上述原因。可以试试telnet到用户的计算机上的这个端口，看看它是否会给你一个shell。连接到 600/pcserver也存在这个问题。 <br /><br />端口：1600 <br />服务：issd <br />说明：木马shivka－burka开放此端口。 <br /><br />端口：1720 <br />服务：netmeeting <br />说明：netmeeting h.233 call setup。 <br /><br />端口：1731 <br />服务：netmeeting audio call control <br />说明：netmeeting音频调用控制。 <br /><br />端口：1807 <br />服务：【null】 <br />说明：木马spysender开放此端口。 <br /><br />端口：1981 <br />服务：【null】 <br />说明：木马shockrave开放此端口。 <br /><br />端口：1999 <br />服务：cisco identification port <br />说明：木马backdoor开放此端口。 <br /><br />端口：2000 <br />服务：【null】 <br />说明：木马girlfriend 1.3、millenium 1.0开放此端口。 <br /><br />端口：2001 <br />服务：【null】 <br />说明：木马millenium 1.0、trojan cow开放此端口。 <br /><br />端口：2023 <br />服务：xinuexpansion 4 <br />说明：木马pass ripper开放此端口。 <br /><br />端口：2049 <br />服务：nfs <br />说明：nfs程序常运行于这个端口。通常需要访问portmapper查询这个服务运行于哪个端口。 <br /><br />端口：2115 <br />服务：【null】 <br />说明：木马bugs开放此端口。 <br /><br />端口：2140、3150 <br />服务：【null】 <br />说明：木马deep throat 1.0/3.0开放此端口。 <br /><br />端口：2500 <br />服务：rpc client using a fixed port session replication <br />说明：应用固定端口会话复制的rpc客户 <br /><br />端口：2583 <br />服务：【null】 <br />说明：木马wincrash 2.0开放此端口。 <br /><br />端口：2801 <br />服务：【null】 <br />说明：木马phineas phucker开放此端口。 <br /><br />端口：3024、4092 <br />服务：【null】 <br />说明：木马wincrash开放此端口。 <br /><br />端口：3128 <br />服务：squid <br />说 明：这是squid  http代理服务器的默认端口。攻击者扫描这个端口是为了搜寻一个代理服务器而匿名访问internet。也会看到搜索其他代理服务器的端口8000、 8001、8080、8888。扫描这个端口的另一个原因是用户正在进入聊天室。其他用户也会检验这个端口以确定用户的机器是否支持代理。 <br /><br />端口：3129 <br />服务：【null】 <br />说明：木马master paradise开放此端口。 <br /><br />端口：3150 <br />服务：【null】 <br />说明：木马the invasor开放此端口。 <br /><br />端口：3210、4321 <br />服务：【null】 <br />说明：木马schoolbus开放此端口 <br /><br />端口：3333 <br />服务：dec－notes <br />说明：木马prosiak开放此端口 <br /><br />端口：3389 <br />服务：超级终端 <br />说明：windows 2000终端开放此端口。 <br /><br />端口：3700 <br />服务：【null】 <br />说明：木马portal of doom开放此端口 <br /><br />端口：3996、4060 <br />服务：【null】 <br />说明：木马remoteanything开放此端口 <br /><br />端口：4000 <br />服务：qq客户端 <br />说明：腾讯qq客户端开放此端口。 <br /><br />端口：4092 <br />服务：【null】 <br />说明：木马wincrash开放此端口。 <br /><br />端口：4590 <br />服务：【null】 <br />说明：木马icqtrojan开放此端口。 <br /><br />端口：5000、5001、5321、50505 <br />服务：【null】 <br />说明：木马blazer5开放5000端口。木马sockets de troie开放5000、5001、5321、50505端口。 <br /><br />端口：5400、5401、5402 <br />服务：【null】 <br />说明：木马blade runner开放此端口。 <br /><br />端口：5550 <br />服务：【null】 <br />说明：木马xtcp开放此端口。 <br /><br />端口：5569 <br />服务：【null】 <br />说明：木马robo－hack开放此端口。 <br /><br />端口：5632 <br />服务：pcanywere <br />说 明：有时会看到很多这个端口的扫描，这依赖于用户所在的位置。当用户打开pcanywere时，它会自动扫描局域网c类网以寻找可能的代理（这里的代理是 指agent而不是proxy）。入侵者也会寻找开放这种服务的计算机。，所以应该查看这种扫描的源地址。一些搜寻pcanywere的扫描包常含端口 22的udp数据包。 <br /><br />端口：5742 <br />服务：【null】 <br />说明：木马wincrash1.03开放此端口。 <br /><br />端口：6267 <br />服务：【null】 <br />说明：木马广外女生开放此端口。 <br /><br />端口：6400 <br />服务：【null】 <br />说明：木马the thing开放此端口。 <br /><br />端口：6670、6671 <br />服务：【null】 <br />说明：木马deep throat开放6670端口。而deep throat 3.0开放6671端口。 <br /><br />端口：6883 <br />服务：【null】 <br />说明：木马deltasource开放此端口。 <br /><br />端口：6969 <br />服务：【null】 <br />说明：木马gatecrasher、priority开放此端口。 <br /><br />端口：6970 <br />服务：realaudio <br />说明：realaudio客户将从服务器的6970－7170的udp端口接收音频数据流。这是由tcp－7070端口外向控制连接设置的。 <br /><br />端口：7000 <br />服务：【null】 <br />说明：木马remote grab开放此端口。 <br /><br />端口：7300、7301、7306、7307、7308 <br />服务：【null】 <br />说明：木马netmonitor开放此端口。另外netspy1.0也开放7306端口。 <br /><br />端口：7323 <br />服务：【null】 <br />说明：sygate服务器端。 <br /><br />端口：7626 <br />服务：【null】 <br />说明：木马giscier开放此端口。 <br /><br />端口：7789 <br />服务：【null】 <br />说明：木马ickiller开放此端口。 <br /><br />端口：8000 <br />服务：oicq <br />说明：腾讯qq服务器端开放此端口。 <br /><br />端口：8010 <br />服务：wingate <br />说明：wingate代理开放此端口。 <br /><br />端口：8080 <br />服务：代理端口 <br />说明：www代理开放此端口。 <br /><br />端口：9400、9401、9402 <br />服务：【null】 <br />说明：木马incommand 1.0开放此端口。 <br /><br />端口：9872、9873、9874、9875、10067、10167 <br />服务：【null】 <br />说明：木马portal of doom开放此端口。 <br /><br />端口：9989 <br />端口：9989 <br />服务：【null】 <br />说明：木马ini－killer开放此端口。 <br /><br />端口：11000 <br />服务：【null】 <br />说明：木马sennaspy开放此端口。 <br /><br />端口：11223 <br />服务：【null】 <br />说明：木马progenic trojan开放此端口。 <br /><br />端口：12076、61466 <br />服务：【null】 <br />说明：木马telecommando开放此端口。 <br /><br />端口：12223 <br />服务：【null】 <br />说明：木马hack? keylogger开放此端口。 <br /><br />端口：12345、12346 <br />服务：【null】 <br />说明：木马netbus1.60/1.70、gabanbus开放此端口。 <br /><br />端口：12361 <br />服务：【null】 <br />说明：木马whack－a－mole开放此端口。 <br /><br />端口：13223 <br />服务：powwow <br />说 明：powwow是tribal  voice的聊天程序。它允许用户在此端口打开私人聊天的连接。这一程序对于建立连接非常具有攻击性。它会驻扎在这个tcp端口等回应。造成类似心跳间隔 的连接请求。如果一个拨号用户从另一个聊天者手中继承了ip地址就会发生好象有很多不同的人在测试这个端口的情况。这一协议使用opng作为其连接请求的 前4个字节。 <br /><br />端口：16969 <br />服务：【null】 <br />说明：木马priority开放此端口。 <br /><br />端口：17027 <br />服务：conducent <br />说明：这是一个外向连接。这是由于公司内部有人安装了带有conducent"adbot"的共享软件。conducent"adbot"是为共享软件显示广告服务的。使用这种服务的一种流行的软件是pkware。 <br /><br />端口：19191 <br />服务：【null】 <br />说明：木马蓝色火焰开放此端口。 <br /><br />端口：20000、20001 <br />服务：【null】 <br />说明：木马millennium开放此端口。 <br /><br />端口：20034 <br />服务：【null】 <br />说明：木马netbus pro开放此端口。 <br /><br />端口：21554 <br />服务：【null】 <br />说明：木马girlfriend开放此端口。 <br /><br />端口：22222 <br />服务：【null】 <br />说明：木马prosiak开放此端口。 <br /><br />端口：23456 <br />服务：【null】 <br />说明：木马evil ftp、ugly ftp开放此端口。 <br /><br />端口：26274、47262 <br />服务：【null】 <br />说明：木马delta开放此端口。 <br /><br />端口：27374 <br />服务：【null】 <br />说明：木马subseven 2.1开放此端口。 <br /><br />端口：30100 <br />服务：【null】 <br />说明：木马netsphere开放此端口。 <br /><br />端口：30303 <br />服务：【null】 <br />说明：木马socket23开放此端口。 <br /><br />端口：30999 <br />服务：【null】 <br />说明：木马kuang开放此端口。 <br /><br />端口：31337、31338 <br />服务：【null】 <br />说明：木马bo(back orifice)开放此端口。另外木马deepbo也开放31338端口。 <br /><br />端口：31339 <br />服务：【null】 <br />说明：木马netspy dk开放此端口。 <br /><br />端口：31666 <br />服务：【null】 <br />说明：木马bowhack开放此端口。 <br /><br />端口：33333 <br />服务：【null】 <br />说明：木马prosiak开放此端口。 <br /><br />端口：34324 <br />服务：【null】 <br />说明：木马tiny telnet server、biggluck、tn开放此端口。 <br /><br />端口：40412 <br />服务：【null】 <br />说明：木马the spy开放此端口。 <br /><br />端口：40421、40422、40423、40426、 <br />服务：【null】 <br />说明：木马masters paradise开放此端口。 <br /><br />端口：43210、54321 <br />服务：【null】 <br />说明：木马schoolbus 1.0/2.0开放此端口。 <br /><br />端口：44445 <br />服务：【null】 <br />说明：木马happypig开放此端口。 <br /><br />端口：50766 <br />服务：【null】 <br />说明：木马fore开放此端口。 <br /><br />端口：53001 <br />服务：【null】 <br />说明：木马remote windows shutdown开放此端口。 <br /><br />端口：65000 <br />服务：【null】 <br />说明：木马devil 1.03开放此端口。 <br /><br /><br />端口：88 <br />说明：kerberos krb5。另外tcp的88端口也是这个用途。 <br /><br />端口：137 <br />说 明：sql named pipes encryption over other protocols name  lookup(其他协议名称查找上的sql命名管道加密技术)和sql rpc encryption over other protocols  name lookup(其他协议名称查找上的sql rpc加密技术)和wins netbt name service(wins  netbt名称服务)和wins proxy都用这个端口。 <br /><br />端口：161 <br />说明：simple network management protocol(smtp)（简单网络管理协议）。 <br /><br />端口：162 <br />说明：snmp trap（snmp陷阱） <br /><br />端口：445 <br />说明：common internet file system(cifs)（公共internet文件系统） <br /><br />端口：464 <br />说明：kerberos kpasswd(v5)。另外tcp的464端口也是这个用途。 <br /><br />端口：500 <br />说明：internet key exchange(ike)（internet密钥交换） <br /><br />端口：1645、1812 <br />说明：remot authentication dial－in user service(radius)authentication(routing and remote access)(远程认证拨号用户服务) <br /><br />端口：1646、1813 <br />说明：radius accounting(routing and remote access)(radius记帐（路由和远程访问）) <br /><br />端口：1701 <br />说明：layer two tunneling protocol(l2tp)(第2层隧道协议) <br /><br />端口：1801、3527 <br />说明：microsoft message queue server(microsoft消息队列服务器)。还有tcp的135、1801、2101、2103、2105也是同样的用途。 <br /><br />端口：2504 <br />说明：network load balancing(网络平衡负荷)</div><img src ="http://www.blogjava.net/ivanwan/aggbug/352686.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2011-06-20 20:17 <a href="http://www.blogjava.net/ivanwan/archive/2011/06/20/352686.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>指定下载文件页面</title><link>http://www.blogjava.net/ivanwan/archive/2011/03/16/346419.html</link><dc:creator>ivaneeo</dc:creator><author>ivaneeo</author><pubDate>Wed, 16 Mar 2011 11:04:00 GMT</pubDate><guid>http://www.blogjava.net/ivanwan/archive/2011/03/16/346419.html</guid><wfw:comment>http://www.blogjava.net/ivanwan/comments/346419.html</wfw:comment><comments>http://www.blogjava.net/ivanwan/archive/2011/03/16/346419.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/ivanwan/comments/commentRss/346419.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/ivanwan/services/trackbacks/346419.html</trackback:ping><description><![CDATA[<p>&lt;?php<br />
header('Content-disposition:attachment;filename=movie.mpg');<br />
header('Content-type:video/mpeg');<br />
readfile('movie.mpg');<br />
?&gt;</p>
<img src ="http://www.blogjava.net/ivanwan/aggbug/346419.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/ivanwan/" target="_blank">ivaneeo</a> 2011-03-16 19:04 <a href="http://www.blogjava.net/ivanwan/archive/2011/03/16/346419.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>