Неустранимая ошибка PHP: вызов неопределенной функции apache_getenv()

Хост: Amazon Web Services

Домен: Годадди

SSL: Боже мой

Фреймворк: Laravel 4.2

PHP: PHP5.6

Апач: Апач 2.4.16

Файл расположен: /var/www/html/test

Мой код:

$api_request = 'https://'.apache_getenv("HTTP_HOST") . apache_getenv("REQUEST_URI");

Ошибка: Неустранимая ошибка PHP: вызов неопределенной функции apache_getenv()

Похоже, что его не существует.

Приложение Laravel Расположено по адресу: html. Потом еще две папки с laravel: test и live.

  • html/ (Laravel app landing page)
    • app/
    • бутстрап/
    • пакеты/
    • общественный/
    • продавец/
    • тест/ (приложение Laravel)
    • live/ (приложение Laravel)
    • index.php

Он правильно работает в html-приложении. но в тестовом приложении этой функции больше нет.


person Marlon Buendia    schedule 18.11.2015    source источник
comment
Ваш серверный API обработчик Apache?   -  person Álvaro González    schedule 18.11.2015
comment
@АльвароГонсалес Server API Apache 2.0 Handler   -  person Marlon Buendia    schedule 18.11.2015
comment
Что не так с использованием $_SERVER?   -  person Jonnix    schedule 18.11.2015
comment
может интересно? getenv — получает значение переменной среды.   -  person Ryan Vincent    schedule 18.11.2015
comment
@JonStirling Я пытался. Выдает ошибку неопределенного индекса HTTP_HOST   -  person Marlon Buendia    schedule 19.11.2015
comment
Я думаю, нам нужно пояснение... Мы говорим о веб-приложении (которое работает через Apache) или о каком-то наборе тестов командной строки?   -  person Álvaro González    schedule 19.11.2015
comment
@ ÁlvaroGonzález проверьте мой ответ с дополнительным вопросом. это может помочь многим людям, хе-хе   -  person Marlon Buendia    schedule 20.11.2015
comment
@JonStirling проверь мой ответ дополнительным вопросом. это может помочь многим людям, хе-хе   -  person Marlon Buendia    schedule 20.11.2015
comment
@RyanVincent проверьте мой ответ с дополнительным вопросом. это может помочь многим людям, хе-хе   -  person Marlon Buendia    schedule 20.11.2015


Ответы (2)


Похоже, apache_getenv отключен в вашем php.ini

Включите его

Отредактируйте php.ini (по умолчанию /etc/php.ini)

Удалить apache_getenv из раздела disable_functions

Сохранить и выйти.

перезапустите обработчик apache/php.

person Harikrishnan    schedule 18.11.2015
comment
какое слово мне искать в php.ini? - person Marlon Buendia; 18.11.2015
comment
я нашел его, но он пустой disable_functions = - person Marlon Buendia; 18.11.2015
comment
Стирать было нечего. - person Marlon Buendia; 19.11.2015
comment
Вы используете среду общего хостинга? Если да, то в основном файле php.ini сервера может быть переопределено. - person Harikrishnan; 19.11.2015
comment
проверьте мой ответ с последующим вопросом. это может помочь многим людям, хе-хе - person Marlon Buendia; 20.11.2015
comment
Сообщение об ошибке: PHP Неустранимая ошибка: вызов неопределенной функции apache_getenv(), а не предупреждение: apache_getenv() отключен по соображениям безопасности. - person Álvaro González; 21.11.2015

Не могли бы вы попробовать

$_SERVER['HTTP_HOST'] and  $_SERVER['REQUEST_URI']

Вместо apache_getenv иногда apache не позволяет вам получить доступ к функциям без активации модуля.

Надеюсь, что это поможет вам.

person Tristup    schedule 18.11.2015
comment
Я старался. Выдает ошибку неопределенного индекса HTTP_HOST - person Marlon Buendia; 19.11.2015
comment
проверьте мой ответ с последующим вопросом. это может помочь многим людям, хе-хе - person Marlon Buendia; 20.11.2015
comment
@MarlonBuendia - Серьезно, все симптомы предполагают, что вы запускаете PHP из командной строки, а не через веб-сервер. - person Álvaro González; 21.11.2015