【问题标题】:Unable to execute include files in PHP Application in Amazon Linux无法在 Amazon Linux 的 PHP 应用程序中执行包含文件
【发布时间】:2018-07-27 05:40:35
【问题描述】:

我目前正在解决为什么我无法在我的项目文件夹中执行包含文件的问题。请参阅下面的 /var/logs/httpd/error_log

项目文件夹位于/var/www/payroll

[2018 年 7 月 27 日星期五 05:12:11.793208] [:error] [pid 7904] [client xxx] PHP 警告:include_once(./Controllers/Databasecon.php):未能打开流: /var/www/payroll/Controllers/Logout.php 中没有这样的文件或目录在线 2

[2018 年 7 月 27 日星期五 05:12:11.793238] [:error] [pid 7904] [client xxx] PHP 警告:include_once():无法打开 './Controllers/Databasecon.php' for 包含(include_path='.:/usr/share/pear') /var/www/payroll/Controllers/Logout.php 在第 2 行

在 VirtualHost 中配置的应用程序

<VirtualHost *:80>
  ServerName binhimefi.com
  DocumentRoot /var/www
     <Directory /var/www>
            DirectoryIndex index.php
            AllowOverride All
    </Directory>
</VirtualHost>

你能帮我解决这个问题吗?谢谢。

【问题讨论】:

  • 顺便说一句。我目前刚刚将 php 项目上传到该服务器。 PHP 项目在上传到此 Linux 服务器之前运行良好,没有问题
  • 你在使用任何框架吗?
  • 嗨,Kuldeep,这个项目。我没有使用任何框架。
  • 您是否在 Logout.php 文件中包含文件?如果是,那么只需包含文件 Databasecon.php。不要设置 Controllers 文件夹位置。
  • 你能描述一下你的应用目录结构吗?

标签: php linux amazon


【解决方案1】:

你应该定义BASE_PATH,它总是会给你/var/www/payroll/

include_once(./Controllers/Databasecon.php) 将尝试包含来自错误目录include_once(/var/www/payroll/Controllers/Controllers/Databasecon.php) 的文件。

您应该使用include_once(BASE_PATH + /Controllers/Databasecon.php)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-08
    • 1970-01-01
    相关资源
    最近更新 更多