Нужна помощь в получении Apache 2.2.5 для регистрации переменных среды (CentOS 6.10) - PullRequest
0 голосов
/ 16 февраля 2019

Я пробовал каждое решение, которое нашел за последние два дня на этом и других сайтах.Нет работы.

Я пытаюсь установить две переменные / команды среды уровня ОС для учетной записи пользователя apache на centos 6.10.Apache версия 2.2.5.Смотрите последний абзац, почему я должен это делать.Альтернативные решения также приветствуются.

В частности, эти команды / переменные:

. /opt/rh/python27/enable
export set CLOUDSDK_PYTHON=/opt/rh/python27/root/usr/bin/python2

У меня есть: Поместите их в /etc/sysconfig/httpd и /etc/init.d/httpd

Пробовал различные версии этих команд Переключил Apache для использованияbash, созданный в .bashrc в /var/www/, дал владение apache, правильно установил разрешения и поместил их туда.Я понимаю, что это плохая практика, это тестовый сервер, и у меня не было других идей.

Я не могу заставить их сохраняться за пределами одного оператора exec в php (где мне все еще приходится вызывать обе перечисленные команды) или одного su -s /bin/bash apache -c "[command]" выполнения.

Кто-нибудь знает, как заставить их сохраняться для пользователя apache?

Почему я это делаю?

Я делаю это, потому что Google Cloud Cloud SDK имеет код PHPэто не работает, поэтому я остаюсь с помощью CURL или передачей операторов exec, оба из которых требуют этой бессмысленной переменной среды для исполняющего пользователя.Для запуска команд Google Cloud SDK у вас должна быть установлена ​​версия Python 2.7, которую вы не можете обновить до Centos 6.10 без поломки ОС, если не установите ее одновременно где-то еще: http://jhurani.com/linux/2018/07/30/GCSDK-on-centos6.html это означает, что янеобходимо установить любую учетную запись пользователя, которая выполняет код для использования новой версии python.Который является apache в этом случае.Работает нормально на моей обычной учетной записи пользователя, но я не могу заставить учетную запись apache уважать эти изменения за исключением одного выполнения, хотя все, что я читаю, говорит, что должно.

Любая помощь будет оценена.Спасибо за ваше время и любые идеи, которыми вы хотели бы поделиться.

1 Ответ

0 голосов
/ 19 февраля 2019

Не могли бы вы попытаться экспортировать переменные в /etc/sysconfig/httpd

export mydocroot=/var/www/html

Затем настроить виртуальный хост

<VirtualHost *:80>
  DocumentRoot ${mydocroot}
</VirtualHost>

Наконец перезапустить службу

systemctl restart httpd

Кроме того, я обнаружил, что вы также можете сделать это через файл .httaccess с SetEnv , предполагая, что он включен на веб-сайте.

SetEnv SPECIAL_PATH /foo/bin

Это все, что вам нужно, чтобы добавить переменную средыв файл .htaccess

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...