[英]Deploy PHP application with extension mongo into heroku 2015
我剛剛將PHP應用程序部署到具有擴展mongo db的heroku中。 在上一個(11/2014)中,可以。 但目前我收到了錯誤消息:您的系統中缺少所請求的php擴展名ext-mongo *。
這是github上項目的結構(用於部署到heroku中):
Root
php.ini
composer.json
composer.lock
Procfile
MySources
ext
mongo.so (this file is located inside ext folder).
php.ini中:
extension_dir="/app/ext/"
extension=mongo.so
composer.json:
{
"require" : {
"silex/silex": "~1.1",
"monolog/monolog": "~1.7",
"ext-mongo": "*"
},
"require-dev": {
"heroku/heroku-buildpack-php": "*"
}
}
Procfile:
web: vendor/bin/heroku-php-apache2
任何人都可以幫助我配置或建議我解決此問題嗎? 使用持久的heroku和php 5.6.7進行部署。
您不需要ext
文件夾(因為該擴展名已經在Heroku上可用了),並且您不需要php.ini
,無論如何它沒有任何作用,因為您沒有配置Heroku使用它。
您需要運行composer update
以使ext-mongo
要求“凍結”到composer.lock
。
如果您的系統上沒有本地安裝該擴展,則應該安裝它(與MongoDB服務器一起),因為您真的想在本地測試您的代碼,然后再盲目地將其推到Heroku上以查看其是否有效。不。
如果由於某種原因您無法執行此操作,則composer update --ignore-platform-reqs
將阻止在您的本地計算機上發生“系統中缺少所請求的php擴展名ext-mongo *”,並生成即使擴展名丟失,也可以糾正composer.lock
。
順便說一下,這一切都清楚地記錄在這里: https : //devcenter.heroku.com/articles/php-support#extensions
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.