我有一些用PHP解析的HTML代码,我希望图片标签是相对的,因为代码需要在多个服务器上工作。
我在目录中有index.php
作为文件夹icons
,而在icons
中,有一个名为logo.png
的图像。代码index.php
是这样的:
echo '<img src="icons/logo.png">';
但是不起作用。但是,如果我将其更改为这种路径(http://mydomain...
),它确实有效。
在其中一台服务器上,index.php
和icons
都位于子域目录中,而另一台服务器上则位于根目录中。在这两种情况下,相对路径都不起作用。
我该如何解决这个问题?
感谢。
编辑:在我的HTML检查器中,我可以看到正确解析了图像的URL。
答案 0 :(得分:0)
如果你的文件在根目录public_html /中,那么你不需要做任何事情只需使用/icons/logo.png
访问它。但是,如果您有子目录,希望它是自己的根目录,请执行以下操作:
如果您有权访问Virtual Host
,则需要为apache设置httpd-vhosts
,并将其链接到子目录,作为其下所有文件/文件夹的根目录。
然后您只需使用"/icons/logo.png"
如果您无法访问VHosts
或apache文件并且您正在托管共享托管,则需要阅读 .htaccess 以捕获请求并检查img是否存在于root中如果没有检查它是否存在于子目录中。
另一种方法是只有一个网站URL的全局变量,如:
define('SITE_URL', 'http://mysite.com/');
并链接到您的图片,例如:<?=SITE_URL?>icons/logo.png
对于每个服务器,您只需修改SITE_URL
答案 1 :(得分:0)
你需要知道你在服务器或wamp服务器c中的路径是什么:/ wamp / www / 所以你可以把这个
echo '<'img src="/icons/biglogo.png >
否则你需要改变路径或完整路径
echo '<'img src="/mysite/img/icons/biglogo.png" >';
答案 2 :(得分:0)
好吧,我发现了问题! 不需要复杂的解决方案,因为问题是:
icons/
当转到http://mydomain.com/icons
时,我发现自己处于一个包含apache图标的apache文件夹中。
所以我想它需要我到域的根,并进入一些图标文件夹。
将icons/
更改为例如images/
时,效果非常好!