0

我正在尝试创建自己的 MVC。我的文件夹结构如下:

 localhost (root, htdocs)
   - Project_1
     - images
       - test.jpg
     - App
       - Controllers
       - Models
       - Views
     - Classes

现在,如果我在视图文件夹下创建一个索引文件并添加:

    <img src="/images/test.jpg" />

这不会加载 test.jpg 因为/指向localhost (root/htdocs)文件夹而不是指向Project_1

我的问题是我需要做什么才能/指向Project_1目录而不是根目录,我知道它必须对 VHosts 做一些事情,但不幸的是我不知道任何可以解释该问题的教程。

任何想法/建议或教程链接将不胜感激。谢谢

注意:我不想做以下事情:

  define('ROOT', '/localhost/Project_1/');

然后像这样使用它

  <img src="<?=ROOT?>images/test.jpg" />

这就是我试图避免的

4

1 回答 1

0

如果您要做的只是更改图像的基本路径,那么您可能能够摆脱使用<base>HTML 元素。

取自 MDN -
HTML 元素指定用于文档中包含的所有相对 URL 的基本 URL。

至于 PHP 方面,您断然拒绝的选项可能是最好的方法- 定义一个指向正确路径的常量 -

define('ROOT', '/localhost/Project_1/');

如果您想进入虚拟主机的设置,那么您将能够直接从虚拟主机的定义中设置文档根目录。这是一个简单的例子 -

<VirtualHost *:80>
    DocumentRoot /var/www/localhost/Project_1/
    ServerName Project_1.com
</VirtualHost>

在这个虚拟主机中,您$_SERVER['DOCUMENT_ROOT']现在将是/var/www/localhost/Project_1/.

于 2013-01-22T20:17:01.850 回答