首页 > 编程技术 > html

如何让iis支持伪静态和增加伪静态规则方法

发布时间:2016-9-20 19:00

如果想让iis支持伪静态就必须

先安装php教程 for iis http://www.php.net/downloads.php
然后安装 微软的 urlrewrite http://www.iis.net/download/urlrewrite

下载手动安装包isapi_rewrite3_0042_manual.exe
需要手工解压到服务器的一个目录中。
打开iis管理器 -> 选择网站属性 -> isapi筛选器 -> 在名称中输入isapi_rewrite
可执行文件选择刚才解压后的文件isapi_rewrite.dll -> 点确定-> 再点确定
关闭属性对话框再次查看网站属性 -> 到isapi筛选器
如果看到状态为向上的绿色箭头,就说明rewrite模块安装成功了。
如果加载不成功,需要检查iis_wpg是否有读取运行的权限。

下面看增加iis伪静态

1. 安装重写插件rewrite.dll

如果你的 iis 服务器加载过 rewrite.dll 则可以不用下载。

加载 rewrite.dll

在 iis 的 isapi 上添加筛选器

筛选器名称为:re

可执行文件选择 rewrite.dll 就可以了!

2. 配置 httpd.ini
打开你的httpd.ini,找到

[isapi_rewrite]

# 3600 = 1 hour
cacheclockrate 3600

repeatlimit 32

# protect httpd.ini and httpd.parse.errors files
# from accessing through http
rewriterule ^(.*)/archiver/([a-z0-9-]+.html)$ $1/archiver/index.php?$2
rewriterule ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3
rewriterule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3d$4&page=$3
rewriterule ^(.*)/profile-(username|uid)-(.+?).html$ $1/viewpro.php?$2=$3

 

fck 上传图片无响应未能解决方法

前者的错误犯的比较白痴,居然是因为bin中没有fckeditor.dll,唉!拷贝一份进来即可!

后者发生的原因可能大家各有不同,我这边是将/filemanager/connectors/asp教程x/connector.aspx和/filemanager/connectors/aspx/upload.aspx两个页面的开始位置加上theme=""和stylesheettheme="",修改后为:

<%@pagelanguage="c#"trace="false"inherits="fredck.fckeditorv2.filebrowser.connector" autoeventwireup="false" theme="" stylesheettheme=""%>

 

input 和 textarea 唯一的区别就是 textarea中的换行会被保存到数据库教程!

如果你没有在存入的 使用 诸如 nl2br 的函数处理掉 换行
或者 读出的时候 做 nl2br 处理!
那么 这段文字 在html 源代码中 将会换行,可能会导致 js错误!

不知道,你是怎么放到js中的;
var content ="<?=$content?>";
如果是这种情况的话,十有八九有脚本错误,换行了导致js运行错误,如果你没有在存入数据的时候使用nl2br你可以这样:
var content ="<?=nl2br(addslashes($content))?>";

下面提供了asp html jsp php 防止页面缓存的处理方法,代码如下

php网页

header("expires:mon,26jul199705:00:00gmt");
header("cache-control:no-cache,must-revalidate");
header("pragma:no-cache");

jsp网页

response.addheader("pragma", "no-cache");

html做法

<meta http-equiv='pragma' content='no-cache'>
<meta http-equiv='cache-control' content='no-cache, must-revalidate'>
<meta http-equiv='expires' content='0'>
<base target="_self">

asp做法

<%  
response.buffer   =   true  
response.expiresabsolute   =   now()   -   1  
response.expires   =   0  
response.cachecontrol   =   "no-cache "  
%> 

 

10种跨域资源共享的方式与实现原理
跨域的方法很多,不同的应用场景我们都可以找到一个最合适的解决方案。比如单向的数据请求,我们应该优先选择jsonp或者window.name,双向通信我们采取cross frame,在未与数据提供方没有达成通信协议的情况下我们也可以用server proxy的方式来抓取数据。

同源策略
在客户端编程语言中,如网页特效和actionscript,同源策略是一个很重要的安全理念,它在保证数据的安全性方面有着重要的意义。同源策略规定跨域之间的脚本是隔离的,一个域的脚本不能访问和操作另外一个域的绝大部分属性和方法。那么什么叫相同域,什么叫不同的域呢?当两个域具有相同的协议(如http), 相同的端口(如80),相同的host(如www.111cn.net),那么我们就可以认为它们是相同的域。比如http://www.111cn.net/index.html和http://www.111cn.net/sub/index.html是同域,而http://www.111cn.net, https教程://www.111cn.net, http://www.111cn.net:8080, http://sub.111cn.net中的任何两个都将构成跨域。同源策略还应该对一些特殊情况做处理,比如限制file协议下脚本的访问权限。本地的html文件在浏览器中是通过file协议打开的,如果脚本能通过file协议访问到硬盘上其它任意文件,就会出现安全隐患,目前ie8还有这样的隐患。

受到同源策略的影响,跨域资源共享就会受到制约。但是随着人们的实践和浏览器的进步,目前在跨域请求的技巧上,有很多宝贵经验的沉淀和积累。这里我把跨域资源共享分成两种,一种是单向的数据请求,还有一种是双向的消息通信。接下来我将罗列出常见的一些跨域方式,以下跨域实例的源代码可以从这里获得。

单向跨域
jsonp
jsonp (json with padding)是一个简单高效的跨域方式,html中的script标签可以加载并执行其他域的javascript,于是我们可以通过script标记来动态加载其他域的资源。例如我要从域a的页面pagea加载域b的数据,那么在域b的页面pageb中我以javascript的形式声明pagea需要的数据,然后在pagea中用script标签把pageb加载进来,那么pageb中的脚本就会得以执行。jsonp在此基础上加入了回调函数,pageb加载完之后会执行pagea中定义的函数,所需要的数据会以参数的形式传递给该函数。jsonp易于实现,但是也会存在一些安全隐患,如果第三方的脚本随意地执行,那么它就可以篡改页面内容,截获敏感数据。但是在受信任的双方传递数据,jsonp是非常合适的选择。

flash urlloader
flash有自己的一套安全策略,服务器可以通过crossdomain.xml文件来声明能被哪些域的swf文件访问,swf也可以通过api来确定自身能被哪些域的swf加载。当跨域访问资源时,例如从域www.a.com请求域www.b.com上的数据,我们可以借助flash来发送http请求。首先,修改域www.b.com上的crossdomain.xml(一般存放在根目录,如果没有需要手动创建) ,把www.a.com加入到白名单。其次,通过flash urlloader发送http请求,最后,通过flash api把响应结果传递给javascript。flash urlloader是一种很普遍的跨域解决方案,不过需要支持ios的话,这个方案就无能为力了。

标签:[!--infotagslink--]

您可能感兴趣的文章: