簡體   English   中英

Amazon Server EC2上的Composer-自動加載不起作用

[英]Composer on Amazon Server ec2 - autoload not working

我配置了一個Amazon Cloud服務器,安裝了php,apache等。然后安裝了composer並運行$php composer.phar及其工作程序。

但是,當我嘗試包含vendor / autoload.php文件(可以在服務器上清楚看到)時,由於出現了找不到文件的提示,因此收到此警告和致命錯誤:

警告:require(/home/ec2-user/vendor/autoload.php):無法打開流:在第12行的/var/www/html/index.php中,權限被拒絕

致命錯誤:require():無法在/ var / www中打開所需的'/home/ec2-user/vendor/autoload.php'(include_path ='。:/ usr / share / pear:/ usr / share / php') /html/index.php,第12行

第12行只是:

require "/home/ec2-user/vendor/autoload.php";

是否有人知道導致此錯誤的原因或任何有助於消除該錯誤的因素? 謝謝。

我遇到了同樣的問題,下面是解決該問題的步驟:

  1. 按照以下說明安裝Composer: https : //docs.aws.amazon.com/aws-sdk-php/v3/guide/getting-started/installation.html
  2. 將所有Composer組件復制到www根目錄下
  3. 將作曲者組件的所有權更改為Apache
  4. 如果您將ini文件用於AWS憑證,請將其放在/.aws下(根文件夾下)

步驟如下:

cd ~
mkdir composer
cd composer
curl -sS https://getcomposer.org/installer | php
php composer.phar require aws/aws-sdk-php
sudo cp -r ~/composer /var/www/html
sudo chown -R apache:apache /var/www/html/composer
sudo mkdir /.aws

不要忘記將憑據文件復制到./aws。 您還可以將對憑據文件的讀取訪問限制為僅快速:

sudo chown apahce:apache ./aws/credentials
sudo chmod 440 ./aws/credentials

最后,更新php文件中的所需語句。 在上面的示例中,我將composer放置在其自己的文件夾中,因此引用為:

require 'composer/vendor/autoload.php';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM