Рубрики
Uncategorized

Установка исходного кода PHP для обучения swoole (1)

Автор оригинала: David Wong.

Прежде чем узнать о swoole , мы сначала установим PHP и набухнем из исходного кода. Здесь мы представляем два метода установки среды. Первый – установить непосредственно в систему MAC, второй – установить образ Ubuntu через docker, а затем установить исходный код PHP в контейнер.

1, Введение чтобы свулить

Официальный сайт Вульфа: http://swoole.com

Разработчики PHP могут создавать высокопроизводительные асинхронные параллельные службы TCP, UDP, сокетов UNIX, HTTP, websocket. Swool может широко использоваться в Интернете, мобильной связи, корпоративном программном обеспечении, облачных вычислениях, онлайн-играх, Интернете вещей (IOT), Интернете транспортных средств, умном доме и других областях. Использование PHP + swoole в качестве основы сетевой коммуникации может значительно повысить эффективность команды ИТ-исследований и разработок предприятия и сосредоточиться на разработке инновационных продуктов.

  • PHP асинхронный сетевой коммуникационный движок
  • Окончательно скомпилирован как файл so в виде Расширения PHP

2, Подготовка

  • Разработка в среде Linux
  • php 7 swoole2.1 редис
  • Исходная установка php 7 исходная установка swoole

Наша система среды разработки: Mac OS. Если это система Windows, нам нужно запустить систему Linux с виртуальной машиной

3, Установка исходного кода Php7

Обычно мы устанавливаем среду генерации через исходный код и загружаем ее на официальном сайте PHP: http://php.net/. Исходный код необходимо загрузить с официального сайта. В других местах это небезопасно.

Скачать версию 7.2.21

Шаги:

  • декомпрессия tar -xjvf
  • Настроить (введите разархивированный каталог для выполнения команды)
  • делать
  • сделать установку

1. Расстегнуть:

➜  softpackage tar -xjvf php-7.2.21.tar.bz2

2. Войдите в каталог распаковки

cd php-7.2.21

3. Компилировать

#. / configure is a shell script, which is used to detect the dependency environment of packages to be installed
➜  php-7.2.21  ./configure --prefix=/work/study/soft/php

--префикс Указывает путь, по которому установлен PHP. Если вы не выполняете запись в систему, она будет помещена в путь по умолчанию.

4,сделайте и установите

Использование docker для установки среды Ubuntu на MAC

В системе MAC, чтобы предотвратить сбои в работе системы, вы можете напрямую использовать среду docker для установки PHP.

По умолчанию у нас установлен докер

1. Перенесите образ Ubuntu в локальный

docker pull daocloud.io/ubuntu

2. Создать контейнер

sudo docker run -it -p 2221:22 -p 8880:80 -v /work:/work 7698f  /bin/bash

7698f Имя зеркала

-v Сопоставьте каталог хоста с соответствующим каталогом контейнера

3. Установите пакеты, необходимые для компиляции, Введите контейнер и выполните следующую команду:

apt-get update
apt-get install gcc
apt-get install autoconf
apt-get install libxml2-dev

4. Компилировать

cd /work/study/softpackage/php7.2.21
php7.2.21# ./configure --prefix=/work/study/soft/php
php7.2.21# make && make install

5, тест Наш каталог установки: /работа/учеба/программное обеспечение/php , в этом каталоге есть несколько папок.

[email protected]:/work/study/soft/php# ls -l
total 4
drwxr-xr-x 12 root root 408 Aug 27 18:08 bin
drwxr-xr-x  3 root root 102 Aug 27 18:08 etc
drwxr-xr-x  3 root root 102 Aug 27 18:07 include
drwxr-xr-x  3 root root 102 Aug 27 18:07 lib
drwxr-xr-x  3 root root 102 Aug 27 18:07 php
drwxr-xr-x  4 root root 136 Aug 27 18:07 var

После входа в каталог установки вы можете использовать команду ./bin/php -m Расширение вида:

[email protected]:/work/study/soft/php# ./bin/php -m
[PHP Modules]
Core
ctype
date
dom
fileinfo
filter
hash
iconv
json
libxml
pcre
PDO
pdo_sqlite
Phar
posix
Reflection
session
SimpleXML
SPL
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter

[Zend Modules]

Мы можем создать новый PHP-скрипт, чтобы проверить, прошла ли установка успешно.

[email protected]:/work/study/soft/php#  vim test.php
[email protected]:/work/study/soft/php#  ./bin/php test.php

hello

Вы можете видеть, что скрипт может быть запущен, и наша установка прошла успешно.

4. Упростите выполнение PHP

Мы видим, что если вы хотите выполнить PHP-скрипт, вам нужно выполнить его в соответствии с полным путем PHP /работа/учеба/софт/php/bin/php test.php , что очень громоздко и громоздко. Если вы зададите псевдоним, очень просто напрямую следовать сценарию, такому как этот: php test.php Это очень лаконично?

Для изменения команды выполнения требуется добавить выполняемую команду в файл конфигурации ~/.профиль Китай:

vim ~/.profile

~/.профиль Содержание документа

# ~/.profile: executed by Bourne-compatible login shells.

if [ "$BASH" ]; then
  if [ -f ~/.bashrc ]; then
    . ~/.bashrc
  fi
fi

mesg n || tru

# User specific environment and startup programs
#The following is the new variable 20190828

PATH=$PATH:$HOME/bin

export PATH
alias php=/work/study/soft/php/bin/php

Или измените его напрямую /etc/профиль файл конфигурации

#New PHP shortcut command
alias php=/work/study/soft/php/bin/php

Перезагрузить профиль:

source /etc/profile

Затем проверьте себя на успех:

[email protected]:/work/study/soft/php# php test.php
HELLO WORLD

[email protected]:~# php /work/study/soft/php/test.php
HELLO WORLD

С самого начала наш заказ был успешно выполнен.

Примечание: ~ под Linux означает “дом”. Кроме того, в разных операционных системах Linux этот файл может отличаться. Это может быть ~/.bash_profile ;|/~/. bash_login или ~/.профиль Один или несколько из них, если таковые имеются, выполняются в следующем порядке: ~/.bash_profile ~/. bash_login 、|/~/. профиль 。 Например, я использую Ubuntu, которая по умолчанию является единственной в моей папке пользователя ~/.профиль Документы.

5、 Файл Php.ini

Мы можем видеть /работа/учеба/софт/php/ Не в установленном каталоге php.ini Конфигурационный файл, который требует от нас php.ini Скопируйте в каталог установки.

Исходный пакет:

[email protected]:/work/study/softpackage/php-7.2.21# ls -l | grep 'php.ini'
-rw-r--r--   1 root root   71232 Jul 30 09:21 php.ini-development
-rw-r--r--   1 root root   71504 Jul 30 09:21 php.ini-production

Копировать:

[email protected]:/work/study/softpackage/php-7.2.21# cp php.ini-development /work/study/soft/php/etc/

Изменить имя файла php.ini-разработка с помощью php.ini :

cd /work/study/soft/php/etc/
[email protected]:/work/study/soft/php/etc# mv php.ini-development php.ini

Здесь есть еще одна дыра. Иногда мы меняем его php.ini Документ не вступил в силу. Как устранить такие проблемы?

Вы можете использовать следующую команду:

[email protected]:~# php -i | grep php.ini
Configuration File (php.ini) Path => /work/study/soft/php/lib

Как мы видим, конечный путь выполнения – /работа/учеба/софт/php/lib Теперь, как правило, мы помещаем /работа/учеба/софт/php/и т. Д. Ниже, он будет помещен в /работа/учеба/софт/php/lib Таким образом, мы можем переместить нижнюю часть etc в нижнюю часть Lib:

mv ./etc/php.ini ./lib/
[email protected]:~# php -i | grep php.ini
Configuration File (php.ini) Path => /work/study/soft/php/lib
Loaded Configuration File => /work/study/soft/php/lib/php.ini

Статьи по теме: Настройка и выполнение переменных среды/etc/profile и ~/. Bash ﹣ профиль в Linux

Оригинал: “https://developpaper.com/php-source-installation-for-swoole-learning-1/”