Heroku Shield:没有 ps:exec?
Heroku Shield: no ps:exec?
我已经在heroku上成功安装nextcloud,然后到heroku shield。
我在尝试诊断我的应用错误时遇到了一些问题?!主要是因为我没有
heroku ps:exec
而我只有:heroku run bash
我可以看出它们不是相同的现场环境。每次我尝试执行 occ
命令时,我都会得到:
The current PHP memory limit is below the recommended value of 512MB.
我知道这不是真的,因为当我启动驱动器时,我收到:
2019-04-17T21:59:11.405086+00:00 app[web.2]: DOCUMENT_ROOT changed to 'server/'
2019-04-17T21:59:11.405100+00:00 app[web.2]: Using PHP-FPM configuration include 'fpm_custom.conf'
2019-04-17T21:59:11.431612+00:00 app[web.2]: Optimizing defaults for IX dyno....
2019-04-17T21:59:11.446380+00:00 app[web.2]: 1 processes at 2GB memory limit.
2019-04-17T21:59:11.449664+00:00 app[web.2]: Starting php-fpm...
2019-04-17T21:59:13.458996+00:00 app[web.2]: Starting httpd...
2019-04-17T21:59:14.408040+00:00 heroku[web.2]: State changed from starting to up
此外,在安装过程中我尝试监控文件,例如 config.php
。我知道它们正在发生变化,但 cat server/config/config.php
显示我没有任何变化。
所以,我知道这是一些不同的 chroot 环境。
我怎样才能真正看到我的实时文件?
感谢您的帮助。
以下是配置片段列表:
* 添加到 .htaccess
:
<IfModule mod_php7.c>
php_value upload_max_filesize 768M
php_value post_max_size 768M
php_value memory_limit 1024M
php_value mbstring.func_overload 0
php_value default_charset 'UTF-8'
php_value output_buffering 0
<IfModule mod_env.c>
SetEnv htaccessWorking true
</IfModule>
</IfModule>
- 添加到
.user.ini
:
upload_max_filesize=2G
post_max_size=2G
memory_limit=2G
mbstring.func_overload=0
always_populate_raw_post_data=-1
default_charset='UTF-8'
output_buffering=0
- 添加到
fpm_custom.conf
:
php_value[upload_max_filesize] = 2G
php_value[post_max_size] = 2G
php_value[memory_limit] = 2G
php_value[mbstring.func_overload] = 0
php_value[default_charset] = 'UTF-8'
php_value[output_buffering] = 0
php_value[apc.enable_cli] = 1
- 当然
Procfile
读取
web: vendor/bin/heroku-php-apache2 -F fpm_custom.conf server/
感谢您的帮助!
埃里克
不是有意在这里回答我自己的问题,但我收到了对我的 heroku 票的回复:https://help.heroku.com/706339。这是 heroku 的回复:
You're correct that Shield Spaces do not support ps:exec
due to compliance requirements. That means there's no way to traverse a running dyno to see file changes in a Shield Space without manually logging the details to your application logs.
When you spin up a new dyno with the heroku run bash
command it does not start Apache, so the changes in fpm_custom.conf
are not going to be initialized. You might try manually running the vendor/bin/heroku-php-apache2 -F fpm_custom.conf server/
from inside that dyno to better understand how those configurations work together.
我已经在heroku上成功安装nextcloud,然后到heroku shield。
我在尝试诊断我的应用错误时遇到了一些问题?!主要是因为我没有
heroku ps:exec
而我只有:heroku run bash
我可以看出它们不是相同的现场环境。每次我尝试执行 occ
命令时,我都会得到:
The current PHP memory limit is below the recommended value of 512MB.
我知道这不是真的,因为当我启动驱动器时,我收到:
2019-04-17T21:59:11.405086+00:00 app[web.2]: DOCUMENT_ROOT changed to 'server/'
2019-04-17T21:59:11.405100+00:00 app[web.2]: Using PHP-FPM configuration include 'fpm_custom.conf'
2019-04-17T21:59:11.431612+00:00 app[web.2]: Optimizing defaults for IX dyno....
2019-04-17T21:59:11.446380+00:00 app[web.2]: 1 processes at 2GB memory limit.
2019-04-17T21:59:11.449664+00:00 app[web.2]: Starting php-fpm...
2019-04-17T21:59:13.458996+00:00 app[web.2]: Starting httpd...
2019-04-17T21:59:14.408040+00:00 heroku[web.2]: State changed from starting to up
此外,在安装过程中我尝试监控文件,例如 config.php
。我知道它们正在发生变化,但 cat server/config/config.php
显示我没有任何变化。
所以,我知道这是一些不同的 chroot 环境。
我怎样才能真正看到我的实时文件?
感谢您的帮助。
以下是配置片段列表:
* 添加到 .htaccess
:
<IfModule mod_php7.c>
php_value upload_max_filesize 768M
php_value post_max_size 768M
php_value memory_limit 1024M
php_value mbstring.func_overload 0
php_value default_charset 'UTF-8'
php_value output_buffering 0
<IfModule mod_env.c>
SetEnv htaccessWorking true
</IfModule>
</IfModule>
- 添加到
.user.ini
:
upload_max_filesize=2G
post_max_size=2G
memory_limit=2G
mbstring.func_overload=0
always_populate_raw_post_data=-1
default_charset='UTF-8'
output_buffering=0
- 添加到
fpm_custom.conf
:
php_value[upload_max_filesize] = 2G
php_value[post_max_size] = 2G
php_value[memory_limit] = 2G
php_value[mbstring.func_overload] = 0
php_value[default_charset] = 'UTF-8'
php_value[output_buffering] = 0
php_value[apc.enable_cli] = 1
- 当然
Procfile
读取
web: vendor/bin/heroku-php-apache2 -F fpm_custom.conf server/
感谢您的帮助!
埃里克
不是有意在这里回答我自己的问题,但我收到了对我的 heroku 票的回复:https://help.heroku.com/706339。这是 heroku 的回复:
You're correct that Shield Spaces do not support
ps:exec
due to compliance requirements. That means there's no way to traverse a running dyno to see file changes in a Shield Space without manually logging the details to your application logs.When you spin up a new dyno with the
heroku run bash
command it does not start Apache, so the changes infpm_custom.conf
are not going to be initialized. You might try manually running thevendor/bin/heroku-php-apache2 -F fpm_custom.conf server/
from inside that dyno to better understand how those configurations work together.