Загрузка...

Server with working PHP + MySQL on TERMUX

Thread in Backend created by ar_saakyan Mar 22, 2022. (bumped Apr 10, 2022) 2527 views

  1. ar_saakyan
    ar_saakyan Topic starter Mar 22, 2022 Banned 5 Feb 13, 2021
    (Есть видеоролики как установить это все, но у меня почему то не получалось по их гайдам делать)
    И так, сразу к делу!)

    Есть 2 варианта с ROOT правами и БЕЗ ROOT

    Если есть ROOT права, то сервер будет работать на порту 80 (локальный сервер)
    А если нема ROOT, то на 8080
    (на функционал порт не влияет, просто в браузерах по умолчанию установлен всегда 80 порт, поэтому чтобы попасть на ваш сервер прийдется в конце дописывать и порт, пример: localhost:8080)

    Команды в TERMUX`е:

    pkg update -y && pkg upgrade -y

    pkg install apache2 -y && pkg install php -y && pkg install php-apache -y && pkg install phpmyadmin -y && pkg install mariadb -y &&

    termux-setup-storage

    mkdir -p /sdcard/web/www


    Если есть ROOT то устанавливаем и tsu:
    pkg install tsu -y


    Сервер теперь работает, но не работают php и mysql. И так.. Исправим это..)

    nano ../usr/etc/apache2/httpd.conf


    Ищем строчку:
    Listen 8080
    Если у вас есть ROOT, то изменяем на:
    Listen 80
    А если нема, то оставляем на Listen 8080

    Далее ищем вот такие строчки:
    Code
    #LoadModule mpm_prefork_module libexec/apache2/mod_mpm_prefork.so
    LoadModule mpm_worker_module libexec/apache2/mod_mpm_worker.so
    LoadModule authn_file_module libexec/apache2/mod_authn_file.so
    #LoadModule authn_dbm_module libexec/apache2/mod_authn_dbm.so
    #LoadModule authn_anon_module libexec/apache2/mod_authn_anon.so
    #LoadModule authn_dbd_module libexec/apache2/mod_authn_dbd.so
    #LoadModule authn_socache_module libexec/apache2/mod_authn_socache.so
    LoadModule authn_core_module libexec/apache2/mod_authn_core.so
    LoadModule authz_host_module libexec/apache2/mod_authz_host.so
    LoadModule authz_groupfile_module libexec/apache2/mod_authz_groupfile.so
    LoadModule authz_user_module libexec/apache2/mod_authz_user.so
    И изменяем первые 2 LoadModule так, чтобы перед
    #LoadModule mpm_prefork_module libexec/apache2/mod_mpm_prefork.so

    не было Решетки #
    А у второй:
    LoadModule mpm_worker_module libexec/apache2/mod_mpm_worker.so

    нужно поставить Решетку в начале: #LoadModule .....
    В итоге должно получится вот так:

    Code
    LoadModule mpm_prefork_module libexec/apache2/mod_mpm_prefork.so
    #LoadModule mpm_worker_module libexec/apache2/mod_mpm_worker.so
    Теперь нужно дописать свою строчку перед этими LoadModule
    LoadModule php_module libexec/apache2/libphp.so

    И первые 3 строчки будут такими:

    Code
    LoadModule php_module libexec/apache2/libphp.so
    LoadModule mpm_prefork_module libexec/apache2/mod_mpm_prefork.so
    #LoadModule mpm_worker_module libexec/apache2/mod_mpm_worker.so
    Далее ищем:
    #ServerName www.example.com:8080


    ROOT изменяет это на:
    ServerName localhost:80

    Без ROOT на:
    ServerName localhost:8080


    Идем дальше, и находим:
    Code
    <Directory />
    AllowOverride none
    Require all denied
    </Directory>
    Изменяем на:
    Code
    <Directory />
    AllowOverride none
    Require all granted
    </Directory>
    Ищем:
    Code
    DocumentRoot "/data/data/com.termux/files/usr/share/apache2/default-site/htdocs"
    <Directory "/data/data/com.termux/files/usr/share/apache2/default-site/htdocs">
    Изменяем на:
    Code
    DocumentRoot "/sdcard/web/www"
    <Directory "/sdcard/web/www">
    Находим:
    Code
    <IfModule dir_module>
    DirectoryIndex index.html
    </IfModule>
    Изменяем его на:
    Code
    <IfModule dir_module>
    DirectoryIndex index.php index.html
    </IfModule>
    Дальше будет де то:
    Code
    # Virtual hosts
    #Include etc/apache2/extra/httpd-vhosts.conf
    Изменим на:
    [CODE=code]# Virtual hosts
    Include etc/apache2/extra/httpd-vhosts.conf[/CODE]И последнее в этом файле, в самом низу находим это:

    [CODE=code]<IfModule ssl_module>
    SSLRandomSeed startup builtin
    SSLRandomSeed connect builtin
    </IfModule>

    #
    # Load config files from the config directory 'conf.d'.
    #

    Include etc/apache2/conf.d/*.conf[/CODE]И прописываем между:
    [CODE=code]<IfModule ssl_module>
    SSLRandomSeed startup builtin
    SSLRandomSeed connect builtin
    </IfModule>

    ВОТ ТУТ БУДЕТ КОД

    #
    # Load config files from the config directory 'conf.d'.
    #[/CODE]Вот это:
    [CODE=code]<FilesMatch \.php$>
    SetHandler application/x-httpd-php
    </FilesMatch>[/CODE]Тыкаем CTRL + S а потом CTRL + X


    Поздравляю, у вас уже есть полностью рабочий сервер, который поддерживает php, но без Баз Данных.. Осталось совсем чуток! И они у нас будут работать! Совсем чуток, ты молодец!

    nano ../usr/etc/apache2/extra/httpd-vhosts.conf


    Измените там так, чтобы у вас было как туты:

    [CODE=code]<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "/sdcard/web/www"
    ServerName localhost
    ServerAlias www.dummy-host.example.com
    ErrorLog "var/log/apache2/dummy-host.example.com-error_log"
    CustomLog "var/log/apache2/dummy-host.example.com-access_log" common
    </VirtualHost>

    <VirtualHost *:80>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "/data/data/com.termux/files/usr/share/phpmyadmin"
    ServerName 127.0.0.1
    ErrorLog "var/log/apache2/dummy-host2.example.com-error_log"
    CustomLog "var/log/apache2/dummy-host2.example.com-access_log" common
    </VirtualHost>[/CODE]ЕСЛИ У ВАС НЕТУ ROOT ТО НЕ МЕНЯЙТЕ ПОРТЫ В:
    <VirtualHost *:8080>

    У вас они должны остаться 8080 в тех обеих блоках! - это только у тех, у кого нема ROOT

    Тыкаем CTRL + S а потом CTRL + X


    И последний штрих..)

    nano ../usr/share/phpmyadmin/config.inc.php


    Изменяем строчку:
    $cfg['Servers'] [$i] ['host'] = 'localhost';


    Меняем localhost на 127.0.0.1 чтобы получилось так:
    $cfg['Servers'] [$i] ['host'] = '127.0.0.1';




    ПОЗДРАВЛЯЮ! На этом все..)

    WARNING! ВСЕ ФАЙЛЫ ЭТОГО СЕРВЕРА ХРАНЯТСЯ НА ВАШЕЙ ВНУТРЕННЕЙ ПАМЯТИ! В ПАПКЕ WEB/WWW
    Прежде чем запускать добавьте туда какой то файл =) index.php или хотя бы html

    Запустить Сервер БЕЗ ROOT:
    httpd

    Запустить Сервер MySQL:
    mysqld --skip-grant-tables --general-log &


    Остановить Сервер БЕЗ ROOT:
    killall httpd

    Остановить Сервер MySQL:
    killall mysqld



    Запустить Сервер ROOT:
    sudo httpd

    Запустить Сервер MySQL:
    mysqld --skip-grant-tables --general-log &


    Остановить Сервер ROOT:
    sudo killall httpd

    Остановить Сервер MySQL:
    killall mysqld



    КАК ЗАЙТИ НА СВОЙ СЕРВЕР:
    localhost - если делали под ROOT
    localhost:8080 - если делали все БЕЗ ROOT

    БД НАХОДИТСЯ НА:
    127.0.0.1 - если делали под ROOT
    127.0.01:8080 - если делали все БЕЗ ROOT
    * ЛОГИН И ПАРОЛЬ ПО УМОЛЧАНИЮ "root" *


    ВНИМАНИЕ, ЕСЛИ У ВАС НЕ ЗАПУСКАЕТСЯ СЕРВЕР С БАЗОЙ ДАННЫХ ТО ПОПРОБУЙТЕ ВВЕСТИ ЭТО:

    rm ../usr/var/lib/mysql/ib_logfile0 && rm ../usr/var/lib/mysql/ib_logfile1 && rm ../usr/var/lib/mysql/ib_logfile2


    ПОЖАЛУЙСТА, НЕ СУДИТЕ СТРОГО, ЭТО ПЕРВАЯ СТАТЬЯ.. =)
     
  2. Riconc
    Riconc Mar 22, 2022 Banned 81 Aug 14, 2019
    тему снесут, перенес бы лучше в статью
     
  3. bigbombdaun
    че ты топ просто спасибо за статью сам бы хер разобрался
     
  4. Varlynny
    Varlynny Sep 20, 2022 Banned 304 Sep 11, 2022
    спасибо, не видел раньше
     
  5. Sagall
    Sagall Oct 12, 2022 0 Oct 11, 2022
    2022-10-12 13:10:55 0 [Note] InnoDB: Completed initialization of buffer pool
    2022-10-12 13:10:55 0 [ERROR] InnoDB: File ./ib_logfile0 was not found
    2022-10-12 13:10:55 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error
    2022-10-12 13:10:55 0 [Note] InnoDB: Starting shutdown...
    2022-10-12 13:10:55 0 [ERROR] Plugin 'InnoDB' init function returned error.
    2022-10-12 13:10:55 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
    2022-10-12 13:10:55 0 [Note] Plugin 'FEEDBACK' is disabled.
    2022-10-12 13:10:55 0 [ERROR] Unknown/unsupported storage engine: InnoDB
    2022-10-12 13:10:55 0 [ERROR] Aborting
     
  6. Sagall
    Sagall Oct 12, 2022 0 Oct 11, 2022
    Как исправить???
     
Loading...
Top