Мне дали инстанс Ubuntu Amazon EC2. Перед нами стоит задача создать веб-приложение, которое включает в себя загрузку клиентского видео. Я создал приложение для загрузки файлов на моем локальном хосте, и оно работает нормально. Когда я перенес код на сервер виртуального хоста, я не могу загрузить любое видео и даже любой файл, размер которого превышает 2Mb
, Я пытался редактировать php.ini
установка upload_max_filesize
в 50M
и post_max_size для 1000M
,
После перезапуска Apache так много раз, обновление не отражается в моем phpinfo()
информация, но изменения были сохранены в моем php.ini
файл.
Я подозревал, что у данного экземпляра Amazon EC2 есть ограничения на загрузку файлов, но я не уверен, прав ли я. Если я ошибся, как я могу переопределить конфигурацию ниже? Любая помощь будет очень высоко ценится.
ОБНОВИТЬ:
Я даже убедился, что редактирую правильный файл конфигурации. Ниже приведены снимки экрана:
ОБНОВИТЬ:
Я пытался следовать тому, что сказано в ссылка на сайт без удачи У меня есть много вопросов о ссылке, как:
S3 bucket
? Я загрузил файл конфигурации в /var/www/html/.ebextensions
, Я правильно поступаю?мой zzz.ini
содержит код ниже, и я помещаю его в /etc/php.d/zzz.ini
:
[php]
post_max_size = 1000M
upload_max_filesize = 50M
мой myconfigfile.config
был расположен в /var/www/html/.ebextensions/myconfigfile.config
и содержит код ниже:
files:
"/etc/php.ini":
mode: "000644"owner: root
group: root
source: http://mybucketname.s3.amazonaws.com/php.ini
"/etc/php.d/zzz.ini":
mode: "000644"owner: root
group: root
source: http://mybucketname.s3.amazonaws.com/zzz.ini
Как узнать название корзины моего экземпляра?
Я также скопировал мой php.ini
от /etc/php/7.0/apache2/php.ini
в /etc/php.ini
и перезапустил apache. Все еще без изменений. Я правильно поступаю?
ОБНОВИТЬ:
Я спрашиваю имя ведра для человека, который дал мне экземпляр EC2, и ее ответ был.
Да, вы получили доступ к экземпляру EC2. S3 другой
сервис, предоставляемый Amazon, и который автоматически не доступен для
EC2 экземпляры. Мы можем создать ведро в S3 для вас, но оно может не
дольше будет нужно.Экземпляр EC2 имеет около 8 ГБ дискового пространства. Ты должен быть способен
хранить несколько видеофайлов размером более 2 МБ в файловой системе EC2 и
получить доступ к ним напрямую.Использование S3 для загрузки файлов — хорошая идея, особенно когда ваше программное обеспечение
идет в производство. Однако, чтобы упростить настройку, используйте
вместо файловой системы для хранения видео.
ОБНОВИТЬ :
Выполнение следующих команд:
php -i | grep -i max_size
выходы: post_max_size => 1000M => 1000M
grep -ir "max_size" /etc/php/7.0/apache2/conf.d/
ничего не дал.
grep -ir "max_size" /etc/php/7.0/
доходность
/etc/php/7.0/fpm/php.ini:post_max_size = 1000M
/etc/php/7.0/apache2/php.ini:post_max_size = 1000M
/etc/php/7.0/cli/php.ini:post_max_size = 1000M
мой phpinfo()
можно получить доступ через это ссылка на сайт
Проверьте также:
/etc/php.ini
или же
/etc/php-[version].ini
и измените значение также в этом файле. Если этого недостаточно, ищите:
/etc/php.d/aws.ini
Возможно, AWS перевесит вашу ценность. Если это так, то решением является создание файла с именем /etc/php.d/99uploadsize.ini, содержащего только:
[php]
upload_max_filesize = 100M
post_max_size = 100M
Имя 99uploadsize.ini не является обязательным, но помните, что имя должно быть в алфавитном порядке после aws.ini и в том же каталоге, потому что это порядок, в котором эти INI-файлы читаются.
Даже если пример не касается универсальной Ubuntu с Apache, Amazon предлагает решение такого рода для аналогичной проблемы с WP здесь:
https://aws.amazon.com/it/premiumsupport/knowledge-center/wordpress-themes-2mb/
Извините, ребята, что беспокою всех вас, мой плохой. Я трахал себя за это почти 4 дня, и оказалось, что я допустил только синтаксическую ошибку в своем php.ini. Я обновил свой сервер php.ini с помощью недавно установленного php на моем локальном хосте, а phpinfo () был обновлен после перезапуска apache.