PHP: включить расширение загрузчика Ioncube в стандартной среде GAE - PullRequest
0 голосов
/ 10 января 2019

У меня проблема с включением расширения загрузчика ioncube в стандартной среде движка приложения Google, Я получаю эту ошибку:

NOTICE: PHP message: PHP Fatal error: [ionCube Loader] The Loader must appear as the first entry in the php.ini file in Unknown on line 0

Я уже добавил его в первый файл php.ini:

zend_extension = /srv/modules/ioncube_loader_lin_7.2.so
asp_tags = Off
display_errors = Off
max_execution_time = 3600
max_input_time = 3600
max_input_vars = 1000
memory_limit = 512M
post_max_size = 128M
session.gc_maxlifetime = 1440
upload_max_filesize = 1G
zlib.output_compression = On

Я думаю, что мне нужно добавить его в файл php.ini по умолчанию, чтобы выполнить сначала, но я не знаю, как переписать файл php.ini по умолчанию или заменить его ...

1 Ответ

0 голосов
/ 11 января 2019

Сначала вам нужно изменить среду для гибкости и использовать пользовательскую среду выполнения

добавить dockerfile

переместите ваше приложение в подкаталог www

создать конфигурацию подкаталога и создать внутри него пустой файл php.ini

скачать загрузчик ioncube и переместить его в главный каталог

Директория:

-config
   php.ini
-www
app.yaml
composer.json
dockerfile
ioncube_loader_lin_7.2.so

app.yaml:

runtime: custom
env: flex

runtime_config:
  document_root: www
manual_scaling:
  instances: 1
resources:
  cpu: 1
  memory_gb: 0.5
  disk_size_gb: 10

composer.json:

{
  "require": {
    "php": "7.2.*"
  }
}

Dockerfile:

# Dockerfile extending the generic PHP image with application files for a
# single application.
FROM gcr.io/google-appengine/php:latest
# environment variable.
ENV DOCUMENT_ROOT /app/www
# copy default php.ini to txt file
RUN cp /opt/php72/lib/php.ini www/phpconfig.txt

после этого разверните ваше приложение и перейдите в текстовый файл с URL-адресом «yourdomain.com/phpconfig.txt» и добавьте его в свой config / php.ini не забудьте добавить ioncube в первой строке:

zend_extension = "/app/ioncube_loader_lin_7.2.so"

снова отредактируйте dockerfile:

# Dockerfile extending the generic PHP image with application files for a
# single application.
FROM gcr.io/google-appengine/php:latest
# environment variable.
ENV DOCUMENT_ROOT /app/www
COPY config/php.ini /opt/php72/lib/php.ini

и разверните ваше приложение, вот и все.

...