Работа PHP 7.1 после установки из исходников

165
11 января 2018, 23:31

Решил собрать версию php 7.1 вручную, на CentOS 6.

Собирал с такими параметрами:

./configure --prefix=/usr/local --with-config-file-path=/etc --with-layout=PHP 
--with-openssl --with-pear --enable-calendar --with-gmp --enable-exif --with-mcrypt 
--with-mhash --with-mhash --with-zlib --with-bz2 --enable-zip --enable-ftp
 --enable-mbstring --with-iconv --enable-intl --with-icu-dir=/usr --with-gettext 
--with-pspell --enable-sockets --with-openssl -with-curl 
--with-gd --enable-gd-native-ttf --with-libdir=lib64 --with-jpeg-dir=/usr 
--with-png-dir=/usr --with-zlib-dir=/usr --with-xpm-dir=/usr --with-webp-dir=/usr 
--with-freetype-dir=/usr --with-libxml-dir=/usr --with-mysqli=mysqlnd
--with-pdo-mysql=mysqlnd --enable-exif --enable-shmop --enable-soap --with-xmlrpc 
--with-xsl --with-tidy=/usr --enable-pcnt

В итоге она была успешно собрана и установлена.

Сейчас выдача php -v такая:

PHP 7.1.13 (cli) (built: Jan 10 2018 04:43:07) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies

Насколько я понимаю, NTS - это Non Thread Safe? Если да, то, подскажите, пожалуйста, почему.

Также, в /etc нет php.ini а в /usr/local/php странное дерево папок и файлов:

cd /usr/local/php/man/man1/ph   ( внутри предыдущих папок ничего более нет)
phar.1   phar.phar.1   php-cgi.1   php-config.1    php.1    phpdbg.1      phpize.1   

Это и результаты php --ini :

Configuration File (php.ini) Path: /etc
Loaded Configuration File:         (none)
Scan for additional .ini files in: (none)
Additional .ini files parsed:      (none)

Натолкнули меня на то, что я где-то видимо ошибся и PHP все же не установился так как нужно, т.к. сейчас на сайте вместо обработки PHP отображается сам код:

или же отображение PHP кода и некорректная установка никак не связаны?

Подскажите, пожалуйста, буду благодарен за все исправления моей криворукости и неопытности)

Answer 1

Варианты TS (Thread Safe) и NTS (Non Thread Safe) имеют разные исходники. TS отличается тем, что позволяет PHP работать в нескольких потоках. Для простых приложений и взаимодействия с веб-сервером вполне подойдёт и NTS.

Для проверки php выполните в консоли команду

php имя_файла

Используйте тот файл, что вы пробовали вывести на странице, с phpinfo()

На странице выводит код, потому что у вас неправильно настроен веб-сервер. Задайте новый вопрос о настройках веб сервера и укажите, какие настройки у вас сейчас.

READ ALSO
Авторизация на сайте с помощью Яндекс.Ключ 2FA

Авторизация на сайте с помощью Яндекс.Ключ 2FA

ЗдравствуйтеЕсть приложение яндекса Яндекс

172
Не могу правильно обработать foreach

Не могу правильно обработать foreach

Есть вот такой массив:

167
Не могу перезаписать в файле значение внутри многомерного массива

Не могу перезаписать в файле значение внутри многомерного массива

Есть файл configsphp в котором хранится многомерный массив с данными, например:

158
Баг в обрисовке букв - ограничение на количество точек кривой?

Баг в обрисовке букв - ограничение на количество точек кривой?

Есть некоторый текст, который выводится на пустую картинку с помощью annotateImageЗадается толщина обводки таким образом:

170