__DIR__魔法常数值错误

时间:2015-07-27 13:13:18

标签: php laravel nginx composer-php

我一直在尝试安装使用Laravel框架构建的Web应用程序。该应用程序作为GIT存储库托管。

以下是我的问题的详细说明,以阐明我如何面对它。

我第一次在以下路径中克隆了存储库:

  

/var/www/app.example.com/script /

然后创建一个指向它的public目录的符号链接,以遵循我的服务器的nginx路由惯例:

ln -s /var/www/app.example.com/script/public /var/www/app.example.com/public_html

但我决定将所有内容从script目录移到上一级,这就是我的问题开始的地方。
我将Laravel安装移动到/var/www/app.example.com/并使nginx直接加载其public目录作为根路径。

现在问题是我每次尝试加载应用程序时都试图从以前的位置读取文件:

  

警告:   要求(/var/www/app.example.com/script/public /../引导/ autoload.php):   无法打开流:没有这样的文件或目录   第21行的/var/www/app.example.com/public/index.php

     

致命错误:require():需要打开失败   ' /var/www/app.example.com/script/public /../引导/ autoload.php'   (include_path ='。:/ usr / share / php:/ usr / share / pear')in   第21行的/var/www/app.example.com/public/index.php

请注意:

  • 我已经使用composer来安装所有依赖项

    curl -sS https://getcomposer.org/installer | PHP
    php composer.phar install

  • 我使用nginx作为我的网络服务器

  • 我尝试删除所有内容(包括~/.composer),然后重新开始尝试无效。
  • 我甚至试图将整个项目移动到新的根目录
  • 似乎问题在于__DIR__魔术常量,因为它包含错误的路径
  • 奇怪的是,如果我回显__DIR__它会打印正确的路径,但在下一行使用它的路径不正确
  

我希望我在描述中已经足够清楚,以避免任何混淆和可能的低票。

1 个答案:

答案 0 :(得分:0)

所以我可能在这里完全错误,但是有没有配置文件,它可能已经保存了它?或者script目录中还有什么东西可以解决这个问题?当__DIR__输出正确的值时,它也应该在其他代码中。