我有一个用 ASP 编写的动态新闻网站,现在我想更改为不支持 ASP 页面的 PHP 服务器。我现在有类似somepage.asp?id=x的页面,如何将页面重定向到somepage.php?id=x 并且仍然让我的老访问者指向 asp 页面,但它会在 PHP 中返回相同的查询结果。示例:如果我的访问者指向此页面 www.someweb.com/ASPpage.asp?id=100 他们应该被重定向到www.someweb.com/PHPpage.php?id=100
提前致谢
我有一个用 ASP 编写的动态新闻网站,现在我想更改为不支持 ASP 页面的 PHP 服务器。我现在有类似somepage.asp?id=x的页面,如何将页面重定向到somepage.php?id=x 并且仍然让我的老访问者指向 asp 页面,但它会在 PHP 中返回相同的查询结果。示例:如果我的访问者指向此页面 www.someweb.com/ASPpage.asp?id=100 他们应该被重定向到www.someweb.com/PHPpage.php?id=100
提前致谢
您可以在 ASP Classic 中重定向页面,例如:
<%
Response.Redirect "PHPPage.php?" & Request.QueryString
%>
此外,如果您的 php 文件与您的 asp 文件具有相同的文件名,那么您可以使用类似的东西并将其放在您的所有 asp 页面中......
<%
Response.Redirect Replace(Request.ServerVariables("SCRIPT_NAME"),".asp",".php") & "?" & Request.QueryString
%>
希望这可以帮助...
编辑:
我意识到您将尝试在不支持 ASP 的 php 服务器中执行 asp 页面?如果是这种情况,也许您可以将新的 mime-type 添加到您的服务器并将.asp文件设置为.php。抱歉,我不是服务器端控制专家,但这就是我的想法和我的 5 美分。
根据评论,您可以使用 Apache 的 HTAccess mod_rewrite
。
设置您的.htaccess
文件以包含以下内容:
RewriteEngine On
RewriteBase /
RewriteRule ^ASPpage\.asp?id=(.*)$ PHPpage.php?id=$1 [L,R]
asp 是 microsoft 技术,而 php 是开源的
,因此除非您更改 php 的服务器端口号,否则这是不可能的。
然后重定向到带有端口号的完整地址以运行 php 文件