OpenWrt搭建uhttpd+php+sqlite的环境

 零零碎碎忙了玩一个月,写点备忘录

 

首先

刷机,刷机尽量找教程介绍的最新版,我就刚开始就花了很多无用的时间在这上面

 

修改uhttpd设置

在/etc/config/uhttpd中新增一条如下的信息

config uhttpd web 
    list listen_http 0.0.0.0:88
    option home /mnt/overlay/www
    option index_page index.php
    list interpreter ".php=/usr/bin/php-cgi"

代码解释是:

新加一个http监听,在88端口,主目录/mnt/overlay/www,默认网页是index.php,cgi添加的目录是.php=/usr/bin/php-cgi

最后两行在php安装成功后添加

重启web服务器:/etc/init.d/uhttpd restart

 

安装php

 

更新软件库
opkg update
安装到默认目录(usr),后面跟自己想要安装的程序
opkg install php5 php5-cgi php5-mod-ctype php5-mod-hash php5-mod-pdo php5-mod-pdo-sqlite php5-mod-session php5-mod-sqlite

 

如果需要配置自定义目录

编辑/etc/opkg.conf,加入如下一行:
dest udisk /mnt/sda1

然后执行命令
opkg update

opkg install -d udisk php5 php5-cgi php5-mod-ctype php5-mod-hash php5-mod-pdo php5-mod-pdo-sqlite php5-mod-session php5-mod-sqlite php5-mod-sqlite3 php5-mod-tokenizer php5-mod-xml

然后还要配置软连接
建立软连接,不然会找不到对应的库和配置文件:
cd /etc
ln -s /mnt/sda1/etc/php.ini php.ini
ln -s /mnt/sda1/etc/php5 php5
cd /usr/lib
ln -s /mnt/sda1/usr/lib/libpcre.so.0.0.1 libpcre.so.0
ln -s /mnt/sda1/usr/lib/libpcreposix.so.0.0.0 libpcreposix.so.0
ln -s /mnt/sda1/usr/lib/libsqlite.so.0.8.6 libsqlite.so.0      
ln -s /mnt/sda1/usr/lib/libsqlite3.so.0.8.6 libsqlite3.so.0
ln -s /mnt/sda1/usr/lib/libxml2.so.2.7.8 libxml2.so.2      
ln -s /mnt/sda1/usr/lib/libz.so.1.2.3 libz.so        
ln -s /mnt/sda1/usr/lib/php php
cd /usr/bin
ln -s /mnt/sda1/usr/bin/php-cgi php-cgi

 

配置php.ini

修改/etc/php.ini。
去掉下面行前面注释:
extension=ctype.so
extension=hash.so
extension=pdo.so
extension=pdo_sqlite.so
extension=sqlite.so
extension=session.so
extension=tokenizer.so
extension=xml.so
extension=xmlreader.so
extension=xmlwriter.so

修改行:
short_open_tag = On
;doc_root = "/www"           //这个要注释了
date.timezone = Asia/Shanghai  //时区设置可能会有问题,Asia可能安不上

 

然后重启Web服务器就行了,运行查看效果

其他

1.挂载U盘:

  1)fdisk -l 查看插入的U盘的情况,如下

/dev/sda1   *           1           6       48163+  83  Linux
/dev/sda2               7         515     4088542+  83  Linux
/dev/sda3             516         776     2096482+  82  Linux swap / Solaris
/dev/sda4             777        2610    14731605    5  Extended
/dev/sda5             777        2610    14731573+  83  Linux

  2)在想挂载的地方创建新的文件夹,如/mnt/sda1

  3)挂载:

mount /dev/sda1 /mnt/sda1

 

你可能感兴趣的:(OpenWrt搭建uhttpd+php+sqlite的环境)