Как заставить Apache использовать PHP 7.3 на сервере, обновленном до Debian 10?

Учитывая этот файл какinput:

key1=value1
key2=value2
key3=
=value3
key4=value4

Мы можем использовать =как разделитель полей дляawk:

$ awk -F= '!($1 && $2 && NF==2) { print "File failed validation on line " NR; exit 1} { print $1, $2 }' input
key1 value1
key2 value2
File failed validation on line 3

Чтобы выдавать сообщения об ошибках проверки в стандартную ошибку, оператор printможно изменить, а для продолжения обработки после обнаружения ошибки измените оператор exitна оператор next:

.
$ awk -F= '!($1 && $2 && NF==2) { print "File failed validation on line " NR | "cat 1>&2"; next } { print $1, $2 }' input
[stdout] key1 value1
[stdout] key2 value2
[stdout] key4 value4
[stderr] File failed validation on line 3
[stderr] File failed validation on line 4

Проверка выполняется в три этапа; если какой-либо из этих критериев не соблюдается, выдается ошибка, и в первом примере выполнение прерывается с ошибкой -код выхода состояния:

  • $1-Убедитесь, что (в языке входной спецификации )есть «ключ»
  • .
  • $2-Убедитесь, что (в терминологии входной спецификации )есть «значение»
  • NF==2-Убедитесь, что полей всего два; вышеупомянутые «ключ» и «значение»
0
25.08.2020, 17:46
1 ответ

Правильный ответ из комментариев:

Обновление, вероятно, не установило пакет libapache2-mod-php7.3, необходимый для интеграции php7.3в apache2.

Чтобы проверить, установлен ли он уже, запустите

dpkg -l | grep ^i | grep libapache2-mod-php7.3

Если это ничего не возвращает, его необходимо установить.

apt install libapache2-mod-php7.3

Затем отключите старый модуль apache2и активируйте новый :

.
a2dismod php7.0 && a2enmod php7.3 && systemctl restart apache2
4
18.03.2021, 23:10

Теги

Похожие вопросы