下面这个图片是本次的硬件资源:一个无线路由器的开发板,一个8G的u盘,一条手机的数据线(可以作为串口和供电使用),一条网线,一个USB Hub。
<ignore_js_op>
<ignore_js_op>
1、OpenWrt挂载U盘作为系统 |
因为本次才有的无线路由器的开发板的Flash是8M的,编译、烧写完openWrt后,该Flash所剩无几,用来安装论坛显然是心有力而力不足,因此需要将我们的U盘挂载用于安装各类软件,我采用的是exroot的方式,当然也可以采用其他的方式,这里以我自己采用的方式做说明。
首先需要OpenWrt路由器安装USB驱动,我采用的Rom里面已经包含,所以此步不再多说。直接利用下面的方式设置为U盘启动【本处参考了多篇网络技术文章,但是确保可用,网上很多的都不可用】
<ignore_js_op>
1、挂载启动
- mount /dev/sda1 /mnt ##挂载U盘
- mkdir /tmp/root ##建设启动目录
- mount -o bind / /tmp/root ##挂载Openwrt启动文件
- cp /tmp/root/* /mnt -a ##将Openwrt启动文件复制到U盘
- umount /tmp/root ##卸载挂载
- umount /mnt ##卸载挂载
复制代码
<ignore_js_op>
2、利用PuTTY连接路由器,输入下面命令【Putty和vi使用请自行baidu】
- vi /etc/config/fstab
复制代码
修改内容如下:
- config mount
- option target /overlay ##挂载到overlay,启动目录
- option device /dev/sda1 ##启动设备
- option fstype ext4 ##分区格式
- option options rw,sync ##可修改,不知道啥意思
- option enabled 1 ##自动挂载
- option enabled_fsck 0
- option is_rootfs 1
复制代码
也可以利用WinSCP在线编辑【WinSCP如何使用请自行baidu】:
3、修改完毕后,重启路由器。重启完成后,从U盘启动,如下图所示,空间已经变成8G U盘的了,可用随意安装任何软件。
2、安装配置Nginx、PHP5与MySQL |
1、安装Nginx、PHP与MySQL软件
- opkg update
- opkg install php5 php5-mod-gd php5-mod-session php5-mod-pdo php5-mod-pdo-mysql php5-mod-mysql php5-mod-mcrypt php5-mod-mbstring php5-fastcgi php5-cgi php5-mod-xml php5-mod-ctype php5-mod-curl php5-mod-exif php5-mod-ftp php5-mod-iconv php5-mod-json php5-mod-sockets php5-mod-sqlite3 php5-mod-tokenizer php5-mod-zip mysql-server nginx spawn-fcgi zoneinfo-core zoneinfo-asia shadow-groupadd shadow-useradd
复制代码
我是一次全部安装完的,如果你感觉不舒服,可用一条条安装,里面软件包含Nginx、PHP与MySQL所需的各项软件及相关的软件。
2、建立操作用户
- groupadd www
- useradd -g www www
- chown -R www:www /www
复制代码
3、创建数据库文件夹
- mkdir -p /mnt/data /mnt/data/mysql /mnt/data/tmp
复制代码
4、创建默认数据库
- /usr/bin/mysql_install_db --force
复制代码
5、启动mysql,并且创建root密码,密码设置为123,如果真正使用,建议设置复杂点的密码
- /etc/init.d/mysqld start
- /usr/bin/mysqladmin -u root password 123
复制代码
登陆数据库
- mysql -u root -p
复制代码
6、连接上mysql之后,创建数据
- create database discuz
- \g
复制代码
查看当前可用数据库
- show databases
- \g
复制代码
查看MySQL运行状态,输入 /s
7、修改/etc/nginx/nginx.conf,修改/etc/nginx/fastcgi_params,解决Nginx文件类型错误解析漏洞,修改/etc/php.ini,这三处的修改和设置关系到后面论坛能否安装运行,及能否采用Nginx与PHP关联运行,所以一定要设置好,由于代码比较多,我这里就不再拷贝具体的代码,把修改好的文件用附件上传,有需要的自己下载看。
点击文件名下载附件 nginx与php设置
8、启动spawn-fcgi(如需开机自动运行,可将命令添加到/etc/rc.local)
- /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 2 -f /usr/bin/php-cgi
复制代码
9、启动nginx
- /etc/init.d/nginx enable
- /etc/init.d/nginx start
复制代码
10、输入 reboot,重启路由器。将下面的内容复制到一个文件,随意命名为一个文件,如1.php,上传到论坛服务器
- <?php
- phpinfo();
- ?>
复制代码
11、输入 http://192.168.1.1:88/1.php ,则说明正常运行PHP。
<ignore_js_op>
12、利用雅黑PHP探针看运行情况,http://192.168.1.1:88/tz.php(此处为你的路由器设置的地址及上面文件的名称),显示如下:
3、discuz论坛安装 |
1、首先下载discuz,最新版本为Discuz_X3.1,下载地址请点击 discuz下载【简体UTF8版本】;
3、上传完成后,按照产品安装说明,将相应的文件与文件夹设置为 777 权限;
./config/config_global.php
./config/config_ucenter.php
./config
./data
./data/avatar
./data/plugindata
./data/template
./data/threadcache
./data/attachment
./data/attachment/album
./data/attachment/forum
./data/attachment/group
./data/log
./uc_client/data/cache
./uc_server/data/
./uc_server/data/cache
./uc_server/data/avatar
./uc_server/data/backup
./uc_server/data/logs
./uc_server/data/tmp
./uc_server/data/view
4、打开浏览器,输入 192.168.1.1:88/bbs/install/,回车:
5、点击“我同意”,开始安装(必须全部绿色,如果有红色则前面数据库或者文件权限设置错误)
6、安装数据库,与前面设置的账户,密码要一致:
7、安装完成后:
<ignore_js_op>
8、进入管理中心:
<ignore_js_op>
9、进入应用中心:
10、论坛的样子大家都熟悉了,都一样的,不再截图,下面看看安装运行论坛之后的PHP探针运行状态。
4、小结 |
利用OpenWrt+nginx+php安装discuz,由于OpenWrt本身系统为Linux系统,因此采用Nginx的方式安装discuz论坛完全没有王问题,关键在于对于Nginx与PHP相关功能的设置。由于时间关系,本周就只做了Discuz的论坛安装,后面有时间的时候再搞下phpwind的安装,大同小异,建议有兴趣的也可以试下。