我正在尝试创建自己的MVC。我的文件夹结构如下:
localhost (root, htdocs)
- Project_1
- images
- test.jpg
- App
- Controllers
- Models
- Views
- Classes
现在,如果我在views文件夹下创建索引文件并添加:
<img src="/images/test.jpg" />
这不会加载test.jpg,因为/
指向localhost (root/htdocs)
文件夹而未指向Project_1
我的问题是我需要做些什么来使/
指向Project_1
目录而不是root,我知道它必须对VHosts做一些事情但不幸的是我不知道任何教程会解释问题。
任何想法/建议或教程链接将不胜感激。谢谢
注意: 我不想做以下事情:
define('ROOT', '/localhost/Project_1/');
然后像
一样使用它 <img src="<?=ROOT?>images/test.jpg" />
这就是我试图避免的事情
答案 0 :(得分:0)
如果您要做的只是更改图像的基本路径,那么您可以使用<base>
HTML元素。
Taken from 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/
。