zoukankan      html  css  js  c++  java
  • [ASP]sitemap地图生成代码

    保存为sitemap.asp,然后放到网站根目录下,设定要生成的文件夹名字,运行,就OK了

    <%
    ' sitemap.asp
    session("count")=0
    '你的域名
    session("server")="http://你的网站地址"

    '制作生成SiteMap.xml的目录,后面不要带"/",大小写敏感
    vDir = "/XXXXX"

    '设置你想要GOOGLE收录的文件文件名扩展名
    Extensions = Array("png","gif","jpg","jpeg","zip","pdf","ps","html","htm","asp","php","wk1","wk2","wk3","wk4","wk5","wki","wks","wku","lwp","mw","xls","ppt","doc","swf","wks","wps","wdb","wri","rtf","ans","txt","shtml","shtm")

    '需要过滤的目录
    PathExclusion=Array("\admin","\_vti_cnf","_vti_pvt","_vti_log","cgi-bin","aspnet_client")

    set objfso = CreateObject("Scripting.FileSystemObject")
    root = Server.MapPath(vDir)
    'response.End
    '创建文件
    objfso.createtextfile(server.mappath("/sitemap.xml"))
    response.write "<p><strong style='font-family:arial,sans-serif;font-size=12'>创建SiteMap.xml成功!</strong><I style='font-family:arial,sans-serif;font-size=12'> "&server.mappath("/sitemap.xml")&" </I></p>"

    response.write "<p><strong style='font-family:arial,sans-serif;font-size=12'>正在索引文件,请稍侯...</strong></p>"

    Set openfileobj=objfso.opentextfile(server.mappath("/sitemap.xml"),8)
    openfileobj.writeline"<?xml version='1.0' encoding='UTF-8'?>"
    openfileobj.writeline"<urlset xmlns='http://www.google.com/schemas/sitemap/0.84'>"

    Set objFolder = objFSO.GetFolder(root)
    Set colFiles = objFolder.Files
    For Each objFile In colFiles
        openfileobj.writeline getfilelink(objFile.Path,objfile.dateLastModified)
    Next
    ShowSubFolders(objFolder)

    openfileobj.writeline "</urlset>"
    response.write "<p><strong style='font-family:arial,sans-serif;font-size=12'>SiteMap.xml生成完毕,共<span style=color:#FF0000> "&session("count")&" </span>个文件被索引</strong></p>"
    set fso = nothing

    Sub ShowSubFolders(objFolder)
        Set colFolders = objFolder.SubFolders
        For Each objSubFolder In colFolders
            if folderpermission(objSubFolder.Path) then
                  openfileobj.writeline getfilelink(objSubFolder.Path,objSubFolder.dateLastModified)
                  Set colFiles = objSubFolder.Files
                  For Each objFile In colFiles
                      openfileobj.writeline getfilelink(objFile.Path,objFile.dateLastModified)
                  Next
                  ShowSubFolders(objSubFolder)
            end if
        Next
    End Sub

    Function getfilelink(file,datafile)
        file=replace(file,root,"")
        file=replace(file,"\","/")
            
        If FileExtensionIsBad(file) then Exit Function
        if month(datafile)<10 then filedatem="0"
        if day(datafile)<10 then filedated="0"
        filedate=year(datafile)&"-"&filedatem&month(datafile)&"-"&filedated&day(datafile)
        getfilelink = "<url>"&Chr("10")&"<loc>"&server.htmlencode(session("server")&vDir&file)&"</loc>"&Chr("10")&"<lastmod>"&filedate&"</lastmod>"&Chr("10")&"<changefreq>daily</changefreq>"&Chr("10")&"<priority>1.0</priority>"&Chr("10")&"</url>"
            session("count")=session("count")+"1"
            Response.Flush
    End Function

    Function Folderpermission(pathName)
        Folderpermission =True
        for each PathExcluded in PathExclusion
            if instr(ucase(pathName),ucase(PathExcluded))>0 then
                  Folderpermission = False
                  exit for
            end if
        next
    End Function

    Function FileExtensionIsBad(sFileName)
        Dim sFileExtension, bFileExtensionIsValid, sFileExt
       
        if len(trim(sFileName)) = 0 then
            FileExtensionIsBad = true
            Exit Function
        end if

        sFileExtension = right(sFileName, len(sFileName) - instrrev(sFileName, "."))
        bFileExtensionIsValid = false
        for each sFileExt in extensions
            if ucase(sFileExt) = ucase(sFileExtension) then
                  bFileExtensionIsValid = True
                  exit for
            end if
        next
        FileExtensionIsBad = not bFileExtensionIsValid
    End Function
    %>
  • 相关阅读:
    hdu 5723 Abandoned country 最小生成树 期望
    OpenJ_POJ C16G Challenge Your Template 迪杰斯特拉
    OpenJ_POJ C16D Extracurricular Sports 打表找规律
    OpenJ_POJ C16B Robot Game 打表找规律
    CCCC 成都信息工程大学游记
    UVALive 6893 The Big Painting hash
    UVALive 6889 City Park 并查集
    UVALive 6888 Ricochet Robots bfs
    UVALive 6886 Golf Bot FFT
    UVALive 6885 Flowery Trails 最短路
  • 原文地址:https://www.cnblogs.com/MaxIE/p/386331.html
Copyright © 2011-2022 走看看