标签存档 » htaccess的 «

星期六, 2月21日, 2009 | 笔者:

较新的文档类型 办公室 2007 给一些web主机的问题时,他们的客户要提供下载的文件. 最常见, 该文件正在提供由web服务器 “text / html类型” 然后将其呈现为一吨垃圾的网络用户的屏幕上.

要解决这一点的最好办法是将所有的 MIME 类型服务器的主要配置. IIS7 对于Windows已经有了这些MIME类型正确设置默认. IIS6和IIS5的要求要添加的MIME类型, 作为威力 阿帕奇 在旧设备. 对于Apache, 还有一种解决方法为个人站点所有者通过Apache的添加mime类型 .htaccess的 文件.

IIS 6 MIME类型除 (对于服务器管理员)

在此之前可以做, 确保您的服务器也设置为允许直接编辑配置数据库:

  1. 负载 IIS管理器: 开始 - > Ř联合国, “INETMGR” -> [行]
  2. 右键单击 “服务器” 并点击 “PŘoperties”
  3. 内 “Internet信息服务” 标签 (通常是唯一的选项卡), 确保该 “它Ñ能够直接编辑配置数据库” 复选框被选中.
  4. 点击 [行]

一定要 备份IIS配置 (这里 对于IIS5) 事先. 我不会为一个管理员打破他的服务器不承担任何责任. 我有理由相信这 也可以用在IIS5但是我有同样多的理由相信,它可能只是给很多错误. 如果IIS5 / 视窗 2000 管理员愿意测试这个对我来说 备份后 你的配置请让我知道结果.

下面的文字复制到一个名为msoff07-addmime.vbs并执行它 一旦 在命令行键入 CSCRIPT msoff07-addmime.vbs 并按下Enter键. 如果你运行它不止一次, 的MIME类型将每次添加,你将有多个相同的条目:

“这个脚本添加必要的办公室 2007 MIME类型到IIS 6 服务器.
“要使用这个脚本, 只需双击或在命令行中执行它.
“在运行此脚本多次导致多个条目
'IIS的MimeMap所以你不应该运行它不止一次.
从http'的修改://msdn.microsoft.com/en-us/library/ms752346.aspx
 
 MimeMapObj, MimeMapArray, MimeTypesToAddArray, WshShell中, oExec
常量 ADS_PROPERTY_UPDATE = 2 
 
'设置要添加的MIME类型
MimeTypesToAddArray = 排列(“DOCM", “application/vnd.ms-word.document.macroEnabled.12", _
“。的docx", “应用程序/ vnd.openxmlformats-officedocument.wordpro​​cessingml.document", _
“DOTM", “application/vnd.ms-word.template.macroEnabled.12", _
“DOTX", “应用程序/ vnd.openxmlformats-officedocument.wordpro​​cessingml.template", _
“POTM", “application/vnd.ms-powerpoint.template.macroEnabled.12", _
“potx", “应用程序/ vnd.openxmlformats-officedocument.presentationml.template", _
“PPAM", “application/vnd.ms-powerpoint.addin.macroEnabled.12", _
“PPSM", “application/vnd.ms-powerpoint.slideshow.macroEnabled.12", _
“PPSX", “应用程序/ vnd.openxmlformats-officedocument.presentationml.slideshow", _
“PPTM", “application/vnd.ms-powerpoint.presentation.macroEnabled.12", _
“PPTX", “应用程序/ vnd.openxmlformats-officedocument.presentationml.presentation", _
“sldm", “application/vnd.ms-powerpoint.slide.macroEnabled.12", _
“sldx", “应用程序/ vnd.openxmlformats-officedocument.presentationml.slide", _
“XLAM", “application/vnd.ms-excel.addin.macroEnabled.12", _
“XLSB", “application/vnd.ms-excel.sheet.binary.macroEnabled.12", _
“XLSM", “application/vnd.ms-excel.sheet.macroEnabled.12", _
“XLSX", “应用程序/ vnd.openxmlformats-officedocument.spreadsheetml.sheet", _
“xltm", “application/vnd.ms-excel.template.macroEnabled.12", _
“xltx", “应用程序/ vnd.openxmlformats-officedocument.spreadsheetml.template") 
 
'获取的MimeMap对象
 MimeMapObj = GETOBJECT(“事项://本地主机/的MimeMap")
 
“呼叫AddMimeType每对扩展/ MIME类型
 计数器 = 0  UBOUND(MimeTypesToAddArray) 步骤 2
    AddMimeType MimeTypesToAddArray(计数器), MimeTypesToAddArray(计数器+1)
下一个
 
'创建一个Shell对象
 WshShell中 = 的CreateObject(“WScript.Shell的")
 
“停止并启动IIS服务
 oExec = WshShell中.EXEC(“净停止W3SVC")
  oExec.状态 = 0
    WScript的.睡觉 100

 
 oExec = WshShell中.EXEC(“NET START W3SVC")
  oExec.状态 = 0
    WScript的.睡觉 100

 
 oExec = 
 
报告状态的用户
WScript的.回声 “微软Office 2007 文档的MIME类型已经被注册。"
 
“AddMimeType子
 AddMimeType (分机, M型)
 
    “从的MimeMap属性获取映射.
    MimeMapArray = MimeMapObj.GETEX(“的MimeMap") 
 
    '添加新的映射.= UBOUND(MimeMapArray) + 1
    REDIM 保留MimeMapArray()
     MimeMapArray() = 的CreateObject(“的MimeMap")
    MimeMapArray().延期 = 分机
    MimeMapArray().Mime类型 = M型
    MimeMapObj.PutEx ADS_PROPERTY_UPDATE, “的MimeMap", MimeMapArray
    MimeMapObj.呼叫SetInfo
 
结束 

Apache的MIME类型除 (对于服务器管理员)

Apache的存储它的MIME类型在通常位于一个文件 $INSTALLPATH / conf目录/ mime.types中. 见mod_mime一样 文档 更多关于它是如何工作. Arch Linux的 安装在它的MIME类型 /等/的httpd / conf /中的mime.types的Parallels Plesk 在安装它 /USR /本地/ PSA /管理/ conf /中的mime.types. 你的发行版可能会在另一个地方, 所以找到你 mime.types中 通过运行文件 找到mime.types中.

将下列语句添加到您的mime.types文件:

application/vnd.ms-word.document.macroEnabled.12                          docm
application/vnd.openxmlformats-officedocument.wordprocessingml.document   docx
application/vnd.ms-word.template.macroEnabled.12                          dotm
application/vnd.openxmlformats-officedocument.wordprocessingml.template   dotx
application/vnd.ms-powerpoint.template.macroEnabled.12                    potm
application/vnd.openxmlformats-officedocument.presentationml.template     potx
application/vnd.ms-powerpoint.addin.macroEnabled.12                       ppam
application/vnd.ms-powerpoint.slideshow.macroEnabled.12                   ppsm
application/vnd.openxmlformats-officedocument.presentationml.slideshow    ppsx
application/vnd.ms-powerpoint.presentation.macroEnabled.12                pptm
application/vnd.openxmlformats-officedocument.presentationml.presentation pptx
application/vnd.ms-powerpoint.slide.macroEnabled.12                       sldm
application/vnd.openxmlformats-officedocument.presentationml.slide        sldx
application/vnd.ms-excel.addin.macroEnabled.12                            xlam
application/vnd.ms-excel.sheet.binary.macroEnabled.12                     xlsb
application/vnd.ms-excel.sheet.macroEnabled.12                            xlsm
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet         xlsx
application/vnd.ms-excel.template.macroEnabled.12                         xltm
application/vnd.openxmlformats-officedocument.spreadsheetml.template      xltx

Apache的MIME类型除 (对于网站所有者,至少 FTP 访问 – 利用。htaccess文件)

将以下文本添加到您的域的 .htaccess的 文件, 最常用的一种 上传至httpdocs / 目录

将AddType application/vnd.ms-word.document.macroEnabled.12 DOCM
将AddType 应用/ vnd.openxmlformats-officedocument.wordpro​​cessingml.document的docx
将AddType application/vnd.ms-word.template.macroEnabled.12 DOTM
将AddType 应用/ vnd.openxmlformats-officedocument.wordpro​​cessingml.template DOTX
将AddType application/vnd.ms-powerpoint.template.macroEnabled.12 POTM
将AddType 应用/ vnd.openxmlformats-officedocument.presentationml.template potx
将AddType application/vnd.ms-powerpoint.addin.macroEnabled.12 PPAM
将AddType application/vnd.ms-powerpoint.slideshow.macroEnabled.12 PPSM
将AddType 应用/ vnd.openxmlformats-officedocument.presentationml.slideshow PPSX
将AddType application/vnd.ms-powerpoint.presentation.macroEnabled.12 PPTM
将AddType 应用/ vnd.openxmlformats-officedocument.presentationml.presentation PPTX
将AddType application/vnd.ms-powerpoint.slide.macroEnabled.12 sldm
将AddType 应用/ vnd.openxmlformats-officedocument.presentationml.slide sldx
将AddType application/vnd.ms-excel.addin.macroEnabled.12 XLAM
将AddType application/vnd.ms-excel.sheet.binary.macroEnabled.12 XLSB
将AddType application/vnd.ms-excel.sheet.macroEnabled.12 XLSM
将AddType 应用/ vnd.openxmlformats-officedocument.spreadsheetml.sheet XLSX
将AddType application/vnd.ms-excel.template.macroEnabled.12 xltm
将AddType 应用/ vnd.openxmlformats-officedocument.spreadsheetml.template xltx
分享
星期四, 1月22日, 2009 | 笔者:

我最近发现了一个客户端的网页的问题因 .htaccess的 文件. 该网站是由一个 视窗 服务器上运行 IIS 运用 IISPassword, 这使得使用 .htaccess的 它的设置文件.

IISPassword不遵循完全相同的规则与 阿帕奇 然而. 如果。htaccess文件存在,那么它 必须 包含IISPassword,适当的规则, 否则,服务器只返回下面的错误:

Error 500 given by IIS Password
这里的。htaccess文件的内容. 我只修改了最后的重定向URL指向example.com适当:

RewriteEngine叙述 
重写过程 %{HTTP_REFERER} .*谷歌。* $ [数控,或]
重写过程 %{HTTP_REFERER} .*AOL。* $ [数控,或]
重写过程 %{HTTP_REFERER} .*MSN。* $ [数控,或]
重写过程 %{HTTP_REFERER} .*雅虎。* $ [数控,或]
重写过程 %{HTTP_REFERER} .*Yandex的。* $ [数控,或]
重写过程 %{HTTP_REFERER} .*漫步者。* $ [数控,或]
重写过程 %{HTTP_REFERER} .*已经。$ [数控]
重写规则 .* HTTP://siffy钓鱼 -  url.example.com [Ř,该]

如果这 与运行Apache的服务器上 mod_rewrite的, 大多数互联网用户将直接进入正确的网站内容. 只有当他们穿过。htaccess文件中列出的搜索引擎和索引到达现场, 他们会被重定向到siffy钓鱼网址的饼干希望受害者达成.

当然, 该裂解装置 (或者甚至一个自动化蠕虫) 没有意识到问题的服务器甚至没有支持这些mod_rewrite规则. 但无论哪种方式, 这是非常令人担忧的,因为我可以预见有关网站是否很多争论 工作的

分享