无法将旧的PHP URL重定向到新的ASP页面

时间:2012-07-13 01:34:20

标签: php redirect asp-classic

我不是ASP程序员。从PHP系统构建的时候起,人们仍然使用链接。

旧网址:www.domain.com/shop/more.php

新网址:www.domain.com/shop/more.asp

它现在在没有安装PHP的Windows服务器上运行。如果我创建旧的PHP文件,则要求用户在访问时下载.php文件。

我的研究让我了解到我可以通过编辑web.config文件(在页面的根目录或文件夹中)来修复此问题,但所有更改都会导致错误或什么也不做。

我还考虑过将默认的404页面重定向到正确的页面,但我的尝试找到了相同的结果。

有没有人有任何见解?有没有办法找出网站运行的ASP版本?

4 个答案:

答案 0 :(得分:0)

如果PHP不起作用,您应该可以使用javascript重定向:

<script type="text/javascript">
   window.location = "more.asp";
</script>

答案 1 :(得分:0)

你能不能使用web.config,MS等效的.htaccess? http://msdn.microsoft.com/en-us/library/ms972974.aspx

答案 2 :(得分:0)

使用web.config:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
     <modules runAllManagedModulesForAllRequests="true" />
        <rewrite>
            <rules>
                <rule name="CanonicalHostNameRule" stopProcessing="true">
                    <match url="(.*)" />
                    <conditions>
                        <add input="{HTTP_HOST}" pattern="^www\.example\.com/something.php" negate="true" />
                    </conditions>
                    <action type="Redirect" url="http://www.example.com/something.aspx" />
                </rule>
            </rules>
        </rewrite>
  </system.webServer>
</configuration>

在我的生活中从未使用过ASP,所以这可能不会起作用,但希望它能引导你走上正轨。

祝你好运!

NINJA编辑:

刚刚发现这可能会有所帮助?

<add name="en_index"
               redirect="Domain"
               ignoreCase="true" rewriteUrlParameter="IncludeQueryStringForRewrite"
               virtualUrl="http://mysitename/en/(.*).php"
               redirectMode="Permanent"
               destinationUrl="http://mysitename/en/$1.aspx" />

可能有帮助吗?

我从这里解释了这一点(向下滚动): http://our.umbraco.org/forum/core/general/14366-redirect-html-to-aspx

再次,祝你好运!

答案 3 :(得分:-1)

在这种情况下,您应该在IIS服务器上安装php =&gt; http://php.iis.net/ 据我所知,你无法告诉IIS将php文件呈现为其他东西。