Как запустить PHP-сервер на Android
В статье идет речь о полноценном Web-сервере, который можно очень быстро и гибко настроить под свои нужды. Такие вещи как Composer, .htaccess, php.ini будут работать.
Содержание1 Termux
2 Рабочее место
3 Настройка Apache2
1 TermuxНачать разработку PHP- или Web-приложения легко.
Вам понадобится приложение Termux, скачать его можно из
Play Store,
Запустите его и первым делом добавьте виртуальные функциональные кнопки (CTRL, ESC, стрелки) зажав кнопку громкости вверх и букву Q на клавиатуре.
Получится так:
Установите текстовый редактор
nano, сервер
apache2,
php и модуль Apache
php-apache. Для потверждения может потребоваться ввести
Y.
Для этого введите команду в Termux:
pkg install nano apache2 php php-apache
И откройте доступ к памяти телефона через Termux:
А так же разрешите приложению работать с памятью телефона.
2 Рабочее местоЭто папка в которой будут хранится логи, настройки и папка с сайтом.
Откройте память телефона, в Termux:
Создайте папку
web - это будет корень всего, что связано с сервером. В корне создайте папки
cfg - для настроек (php.ini например),
log - для логов сервера и php,
tmp - для временных файлов и
root - файлы сайта.
mkdir web web/cfg web/log web/tmp web/root
Можете назвать иначе.
Теперь через любой файлменеджер откройте папку web/root и создайте там index.php со следующим содержимым:
Для проверки достаточно, рабочее окружение создано.
Настройка Apache2Узнайте полный путь к папке
web через ее свойства и запомните его. Везде, где увидите по тексту статьи надпись
{$WEB}, заменяйте ее на значение пути. Например, у меня он
/storage/emulated/0/webОткройте папку настроек
apache2 в Termux, чтобы настроить сервер:
cd ~
cd ..
cd usr/etc/apache2
и начните его редактировать:
Изменить необходимо следующие параметры:
# порт сервера, можно свой
Listen 8080
# раскоментируйте, чтобы можно было использовать Rewrite Engine
LoadModule rewrite_module libexec/apache2/mod_rewrite.so
# допишите, чтобы работал php
LoadModule php7_module libexec/apache2/libphp7.so
AddHandler application/x-httpd-php .php
PhpIniDir "{$WEB}/cfg"
# имя сервера, оставьте лучше таким, 8080 - значение Listen
SeverName localhost:8080
# корень сайта
DocumentRoot "{$WEB}/root"
# параметры для корня
<Directory "{$WEB}/root">
# измените только этот параметр внутри тега
AllowOverride All
</Directory>
# файл index
DirectoryIndex index.php
# где хранить лог ошибок Apache
ErrorLog "{$WEB}/log/apache-error.log"
# где хранить лог запросов к серверу
CustomLog "{$WEB}/log/apache-access.log" common
Чтобы сохранить в nano используйте CTRL+O, и чтобы закрыть - CTRL+X.
Подробнее о
PhpIniDir. По этому пути модуль PHP будет искать php.ini, если вам нужно его изменить, то добавьте туда его. По умолчанию используются стандартные параметры.
Запускаем Apache2
Остановить вместо start пишите stop, а перезапустить - restart. Прошу заметить, что сервер будет работать пока работает Termux, если вы его полностью закроете, сервер остановится.
Настройка закончена. Вы сделали все правильно и после ввода в адрессной строке браузера
localhost:8080 увидите информацию о PHP: