termux安装apache2+php

发布时间 2023-03-25 13:57:41作者: 伊索

termux安装apache2+php

使用命令开启 存储 权限 termux-setup-storage
termux 需要开启内存卡 /sdcard 或者 /storage/emulated/0 存储

termux 的前缀变量 $PREFIX 指向 /data/data/com.termux/files/usr
$PREFIX 之后的目录结构基本和 Linux 差不多 , 比如 $PREFIX/etc/

已经root的手机,用 su 切换root
pkg install tsu -y
tsu

没有root的手机,模拟一个root的环境
pkg install proot -y
termux-chroot
exit可回到普通用户的文件系统


apt update && apt upgrade -y
apt install nano
apt install wget curl net-tools
apt install openssl ca-certificates
apt install php
apt install php-fpm
apt install apache2
apt install php-apache

apache2 配置文件位于

cd $PREFIX/etc/apache2/
cd /data/data/com.termux/files/usr/etc/apache2/

apache2 默认的 DocumentRoot 位于
/data/data/com.termux/files/usr/share/apache2/default-site/htdocs


●● PHP 的 APACHE2HANDLER 的配置,这里不配置 php-fpm

打开 httpd.conf
nano $PREFIX/etc/apache2/httpd.conf

先加入
LoadModule php_module /data/data/com.termux/files/usr/libexec/apache2/libphp.so
<FilesMatch \.php$>
    SetHandler application/x-httpd-php
</FilesMatch>

之后变更

取消注释 LoadModule mpm_prefork_module libexec/apache2/mod_mpm_prefork.so
添加注释 #LoadModule mpm_worker_module libexec/apache2/mod_mpm_worker.so

<IfModule dir_module>
    DirectoryIndex index.php index.html
</IfModule>

保存重启 apachectl -k restart


●● 开启 SSL

在 $PREFIX/etc/apache2/httpd.conf 去掉下面三行的注释

LoadModule cache_socache_module libexec/apache2/mod_cache_socache.so
LoadModule socache_shmcb_module libexec/apache2/mod_socache_shmcb.so
Include etc/apache2/extra/httpd-ssl.conf

然后在 $PREFIX/etc/apache2/ 目录建立证书文件 server.crt 和 server.key

重启 apachectl -k restart

●● 指定 httpd.conf 和 extra/httpd-ssl.conf 中的 DocumentRoot

DocumentRoot "/sdcard/htdocs"
<Directory "/sdcard/htdocs">

ServerName 也设置一下

ServerName localhost