只做高防服务器租用,所以专业! - 防御王

防护热线:0632-7560000

关于我们 信息中心 法律申明 支付方式 加入我们 联系我们

DTCMS在虚拟空间显示404 如何配置伪静态

新闻发布:高防服务器   发布时间:2024-01-07 16:32

DTcms程序是ASPX开发的,可以部署到我司香港ASPX空间上实现完美兼容。我司ASPX香港专用空间的产品介绍地址是 https://www.zzhidc.com/host/hknet/index.html

某客户程序 DTcms 安装到我司ASPX空间后,切换net4.0  首页显示正常,内页显示404 ,检查了下,貌似是伪静态问题导致的。但是查看 web.config 发现程序貌似有一套自己的伪静态设定。估计要通过注册Dll 并映射特定DLL来实现。

通过查询得知 DTcms已经有自己的独立URL生写引擎,和IIS自带的url rewrite相冲突 。于是只能通过修改 web.config 来调用 空间自带的 url rewrite 来实现伪静态。

如下图,在原有web.config 代码基础上 加入红色的部分 即可。代码可能不尽相同,请备份原有web.config 后谨慎调试。

 

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <!-- appSettings网站信息配置-->
  <appSettings>
    <add key="Configpath" value="~/xmlconfig/site.config" />
    <add key="Urlspath" value="~/xmlconfig/urls.config" />
    <add key="Userpath" value="~/xmlconfig/user.config" />
    <add key="Orderpath" value="~/xmlconfig/order.config" />
    <add key="DbPath" value="~/App_Data/DTcmsdb.mdb" />
  </appSettings>
  <!-- 数据库连接字符串-->
  <connectionStrings>
    <add name="ConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" />
  </connectionStrings>
  <system.web>
    <compilation debug="true" targetFramework="4.0" />


    <customErrors mode="Off" />
    <httpModules>
      <add type="DTcms.Web.UI.HttpModule, DTcms.Web.UI" name="HttpModule" />
    </httpModules>

    <httpHandlers>
      <add verb="*" path="templates/main/*.html" type="System.Web.HttpForbiddenHandler" />
    </httpHandlers>
    <!-- 文件上传大小KB-->
    <httpRuntime requestValidationMode="2.0" maxRequestLength="512000" executionTimeout="3600" />
  </system.web>

  <system.webServer>
 
 
<handlers>
     <add name= "NET-To-html"  path= "*.html"  verb= "POST,GET,DEBUG,HEAD"
            modules= "IsapiModule"  scriptProcessor= "%SystemRoot%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll"
            resourceType= "Unspecified"  preCondition= "classicMode,runtimeVersionv4.0,bitness32"  />
</handlers>


    <validation validateIntegratedModeConfiguration="false" />
    <modules runAllManagedModulesForAllRequests="true">
      <add type="DTcms.Web.UI.HttpModule, DTcms.Web.UI" name="HttpModule" />
    </modules>
    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="50000000" />
      </requestFiltering>
    </security>
        <httpErrors errorMode="Detailed" />
  </system.webServer>

</configuration>