ANMPP是个好东西。比较适合我这种外行+懒人。APK安装后,简单配置一下即可拥有-NMP的环境。APP提供的服务器的根目录默认位于:
/data/data/xiaoqidun.anmpp/files/root/android.wwwroot/localhost
这倒是让我着实为难,用来部署的手机的Flash只有32G,刷机完毕装几个app也就只剩20G+,后期使用起来必然捉襟见肘。塞进一张128G的TF卡后遇到了读写权限的问题。做了几个有趣的尝试,记录如下:
TF卡由手机格式化并挂载为内部存储。发现TF的挂载目录为/sdcard。内部存储挂载到了/storage/emulated。
修改了Nginx的conf文件/data/data/xiaoqidun.anmpp/files/root/android.nginx/conf/conf.d/localhost.conf,指向了/sdcard下的某目录。测试连接成功,但尝试安装的blog程序报错,Z-blog的环境检测显示读写权限有问题。
用Termux尝试修改目标目录的权限,chmod -R 777没有报错。但ls -l查看,权限并未更改。
爬了几个博文,应该是安卓6.0之后系统对SD读写权限的收紧造成,暂时没有看到简单的解决办法。
尝试由软链接绕道解决读写权限的问题。
TF卡由手机格式化并挂载为便携存储设备,挂载目录变为/storage/XXXXX-XXXX。TF卡下先新建一个目录wwwroot。进termux,软连接操作需要先安装pkg insatall termux-api,然后su下操作,否则没有操作权限。
将 /data/data/xiaoqidun.anmpp/files/root/android.wwwroot/localhost这个目录改名:localhost_backup。
该目录里只有一个作者预置的探针,留着备用。
ln -s /storage/XXXXX-XXXX/wwwroot /data/data/xiaoqidun.anmpp/files/root/android.wwwroot/localhost
在TF卡此前的wwwroot目录中丢进去一个z-blog安装包。由其进行安装环境检查,读写权限一切正常。
因为看到一些软链接和ramdisk的种种,我不确定Termux的机制。所以重启手机看是软链接是否会丢失。测试结果良好。
Nginx服务器点击前台链接或者后台登录时出现404, not found。官方给的解决方式是一般的出现这种情况时,nginx.conf里的location设置都是类似这样
location ~ .*\.php$
要支持pathinfo,要改成
location ~ .*\.php(\/.*)*$
在某些老版本的php里面,可能还要打开php.ini里的cgi.fix_pathinfo
cgi.fix_pathinfo = 1
因为用到的是ANMPP。以上配置所以对应的配置文件为:
/data/data/xiaoqidun.anmpp/files/root/android.nginx/conf/conf.d/localhost.conf
/data/data/xiaoqidun.anmpp/files/root/android.php-fpm/etc/php-fpm.ini
修改完毕重启服务即可访问。
另外一篇参考
稳定性什么的有待测试。对于我来说,能用就很好。一个随身的笔记设备就此开始应用喽。接上USB线,选择传输文件,杀到DokuWiki的page目录直接操作,很爽。