2013-03-05 57 views
-1

目前正在开展国际化项目。其中一个要求是从内容管理系统发布静态文件,并根据区域设置提供正确的语言版本。不幸的是,发布的文件是.aspx,并包含对主页面和其他控件的引用。从Web根外部服务ASPX页面

如果页面位于Web根目录内,这很容易。我只是在全局Application_BeginRequest中有一些东西,它接受/abc.aspx的请求并将其重写为/content/[locale]/abc.aspx。

为了便于部署和其他一些原因,我真的很希望这些文件位于Web根目录之外。例如网站位于“D:\ www_root \ site \”,内容位于“D:\ content”中。

有没有办法做到这一点?

回答

1

您可以在IIS中创建virtual directory指向d:\content

虚拟目录是在IIS中指定的目录名称(也称为路径),它映射到本地或远程服务器上的物理目录。目录名称将成为应用程序URL的一部分,用户可以从浏览器请求URL访问物理目录中的内容,例如网页或其他目录和文件的列表。

+0

如果我希望用户被重定向到/content/en/abc.aspx,那么这个方法可行。如果我尝试重写,我会将“虚拟路径”/Content/abc.aspx映射到另一个不被允许的应用程序。“ – Zarigani 2013-03-05 20:27:12

+0

@Zarigani - 没有关于你的设置的更多细节,不可能说出为什么会发生这个错误。请参阅http://nabeeldotnet.blogspot.co.uk/2010/11/virtual-path-maps-to-another.html – Oded 2013-03-05 20:29:23

+0

感谢Oded。我现在有点像一个白痴。我设法说服自己,你不能重写到虚拟目录。在重写路径的前面添加“〜/”就足以解决这个问题。非常感谢您的帮助。 – Zarigani 2013-03-05 20:35:47