我目前遇到问题,因为我需要在虚拟主机中使用Alias。
这是我的Alias-Config:
Alias /projects/proj_one/core /Applications/XAMPP/xamppfiles/htdocs/projects/core
因此当我在proj_one
内时正常当我只使用像<img 'src=core/..'>
但是当我想使用<?php require_once('core/file.php') ?>
时
它告诉我找不到该文件:failed to open stream: No such file or directory in
所以我认为php只是在项目中查找core/
并且显然没有找到它,因为它不了解来自虚拟主机的Alias。
如何通过Alias告诉php该文件在其他地方?
非常感谢
答案 0 :(得分:1)
虚拟主机别名适用于apache而不适用于php。 当您需要或包含您应该使用的文件时。
require_once(__DIR__.'/core/file.php');
如果目录核心位于您所在文件所在的目录中。
__DIR__
始终是当前目录。
因此,我们假设您在index.php中调用require,您的项目结构是:
/home/apps/application
|-index.php
|-core
|-file.php
然后这段代码:
require_once(__DIR__.'/core/file.php');
会奏效。
如果您的结构是:
/home/apps/application
|-public
| |-index.php
|-core
|-file.php
然后:
require_once(__DIR__.'/../core/file.php');
这样可行。
答案 1 :(得分:0)
此错误的原因:
generate: {
fallback: '404.html',
routes: advices
}
是您使用了相对路径,而不是绝对路径:
"failed to open stream: No such file or directory in"
只需使用绝对路径,一切都会起作用。
"require_once('core/file.php')";