Image 如何设置img标记在windows和linux中工作的绝对路径

Image 如何设置img标记在windows和linux中工作的绝对路径,image,path,relative-path,Image,Path,Relative Path,我在linux上使用windows PC进行网站开发和共享主机。我想为img标记使用一个绝对路径,因为它可以在我的站点的不同级别的不同页面中使用,例如http:/home/page1,http://home/level1/page2. 我相信你明白了 因此,我有一些类似的东西,我希望能找到我的图像相对于我的网站的基本目录。在Linux上确实如此,但在windows上它将在/localhost/dir1/dir2/dir3/dir4/imagefile.png中查找,即使我的网站基本目录类似于/l

我在linux上使用windows PC进行网站开发和共享主机。我想为img标记使用一个绝对路径,因为它可以在我的站点的不同级别的不同页面中使用,例如http:/home/page1,http://home/level1/page2. 我相信你明白了

因此,我有一些类似的东西,我希望能找到我的图像相对于我的网站的基本目录。在Linux上确实如此,但在windows上它将在/localhost/dir1/dir2/dir3/dir4/imagefile.png中查找,即使我的网站基本目录类似于/localhost/users/name/webbase

我已经到处搜索如何在windows上设置绝对img源的基本目录,例如使用htacces文件,我很高兴在windows和生产服务器上有一个不同的文件,但没有成功。重写库不起作用

有什么想法吗


顺便说一句,我有几个网站,所以一个全球性的apachehttpd类型的补丁可能不合适。

有趣的是,最后一分钱掉了!我突然意识到,我应该看看我的apache配置。通过谷歌搜索我找到了答案,所以我想我会把它贴在这里,以防其他人遇到这个问题,并像我一样表达出来

对于windows PC上的任何站点,都需要在两个位置进行设置。因此,假设您在C:/Users/user1/site1/和C:/Users/user1/site2/中有两个站点,您希望通过URI www.site1.prefix和www.site2.prefix访问它们,我使用了prefix,这样您就不会意外地将它们与真实站点混淆。您需要的配置是,这是我的文件中的配置:

C:\Windows\System32\drivers\etc\hosts

C:\ProgramFilesx86\ApacheSoftwareFoundation\Apache2.2\conf\https.conf这就是它在我的系统中的位置

NameVirtualHost *:80
<VirtualHost *:80>
  ServerName www.site1.prefix
  ServerAlias www.site1.prefix
  DocumentRoot " C:/Users/user1/site1/"
  <Directory " C:/Users/user1/site1/">
    AllowOverride All
    Order allow,deny
    allow from all
  </Directory>
</VirtualHost>

<VirtualHost *:80>
  ServerName www.site2.prefix
  ServerAlias www.site2.prefix
  DocumentRoot " C:/Users/user1/site2/"
  <Directory " C:/Users/user1/site2/">
    AllowOverride All
    Order allow,deny
    allow from all
  </Directory>
</VirtualHost>
确保文件中除VirtualHost对之外没有任何DocumentRoot语句

请注意,我只在我的笔记本电脑上用于本地开发,所以它不适合生产

NameVirtualHost *:80
<VirtualHost *:80>
  ServerName www.site1.prefix
  ServerAlias www.site1.prefix
  DocumentRoot " C:/Users/user1/site1/"
  <Directory " C:/Users/user1/site1/">
    AllowOverride All
    Order allow,deny
    allow from all
  </Directory>
</VirtualHost>

<VirtualHost *:80>
  ServerName www.site2.prefix
  ServerAlias www.site2.prefix
  DocumentRoot " C:/Users/user1/site2/"
  <Directory " C:/Users/user1/site2/">
    AllowOverride All
    Order allow,deny
    allow from all
  </Directory>
</VirtualHost>