none
如何将.net网站迁移到虚拟目录下 RRS feed

  • 问题

  • 我是一个asp.net的菜鸟,请教大家一个问题,想把.net网站迁移到虚拟目录下,应修改什么配置?我在网上找了很多方法,修改了config文件,都没有成功。该网站加高在IIS根目录下,没有问题。可迁移到虚拟目录下,网站中的图片就无法显示,且字体大小和颜色,整个版面都被改变了。请各位高手,帮忙支支招,谢谢!
    一样的心,不一样的想法;一样的眼睛,不一样的看法;一样的路,不一样的走法。为理想而努力,为梦想而拼搏;相信自己,只要努力,一切皆能实现。
    2009年2月14日 2:39

答案

  •  1,首先,在你的iis里常见一个虚拟目录。并设置为应用程序,设置方法参见图

    http://bbs.es86.com/Upfile/Users/200761313393829.jpg

    2,其实config是不用改动的,只所以会出现你所的 “网站中的图片就无法显示,且字体大小和颜色,整个版面都被改变了”这个问题,是因为页面里面css和图片路径的问题,如果原来的写法是这样的,
    <img src="/images/xx.jpg" />
    或者
    <link type="text/css" rel="Stylesheet" Href="/css/xx.css"/>
    等这样的绝对路径,则就会出现你那样的问题,解决办法是:修改代码,使用相对路径
    <img src="images/xx.jpg"  />
    或者
    <link type="text/css" rel="Stylesheet" Href="css/xx.css"/>

    如果是服务器控件,则要使用<asp:Image  ID="Image1" Runat="server" ImageUrl="~/images/xx.jpg" />而不是ImageUrl="/images/xx.jpg" />


    孟宪会
    • 已标记为答案 不醉鱼 2009年2月16日 13:34
    2009年2月14日 3:22
    版主

全部回复

  •  1,首先,在你的iis里常见一个虚拟目录。并设置为应用程序,设置方法参见图

    http://bbs.es86.com/Upfile/Users/200761313393829.jpg

    2,其实config是不用改动的,只所以会出现你所的 “网站中的图片就无法显示,且字体大小和颜色,整个版面都被改变了”这个问题,是因为页面里面css和图片路径的问题,如果原来的写法是这样的,
    <img src="/images/xx.jpg" />
    或者
    <link type="text/css" rel="Stylesheet" Href="/css/xx.css"/>
    等这样的绝对路径,则就会出现你那样的问题,解决办法是:修改代码,使用相对路径
    <img src="images/xx.jpg"  />
    或者
    <link type="text/css" rel="Stylesheet" Href="css/xx.css"/>

    如果是服务器控件,则要使用<asp:Image  ID="Image1" Runat="server" ImageUrl="~/images/xx.jpg" />而不是ImageUrl="/images/xx.jpg" />


    孟宪会
    • 已标记为答案 不醉鱼 2009年2月16日 13:34
    2009年2月14日 3:22
    版主
  • 另外,就是看看不能显示的图片,在上面点右键,查看图片的地址是什么,看看是不是错误的。

    另外一个问题,是图片和css文件夹禁用了匿名访问,如果登录后可以正确看到,则属于这种问题,解决办法是在web.config里设置<location>节点,将他们设置允许匿名访问
    孟宪会
    2009年2月14日 3:25
    版主
  • 非常感谢楼主的回复,我周一到公司再看一看是不是路径的问题。如果是路径的问题,有没有比较好的方法,能直接更改全部链接?
    一样的心,不一样的想法;一样的眼睛,不一样的看法;一样的路,不一样的走法。为理想而努力,为梦想而拼搏;相信自己,只要努力,一切皆能实现。
    2009年2月15日 2:47