Wzr-ag300h路由器建站完整教程

原创 2014-04-21 13:35  阅读 7,638 次 评论 74 条

路由器建站需要路由器拥有较强的处理能力和内存,本博客建立在WZR-AG300H上,性能中上,适合搭建微型网站服务器、离线下载等应用。

玩路由N年了,第一个接触的智能路由是华硕的WL-HDD,采用的是OLEG的固件,是基于LINUX内核的路由系统,我也从一个对LINUX一无所知的门外汉逐渐懂得了如何在路由环境中刷固件、格式化硬盘U盘、分区、操作文件等基本操作,进而还在一个CPU只有125Mhz的路由上建立起了Lighttpd和Sqlite服务器,FTP服务器,SAMBA服务器,打印机和扫描服务器,摄像头监控服务,无线音乐电台提供端,BT下载客户端,电驴等等应用,无奈125Mhz的CPU,16M的内存实在经不起这样的折腾。

于是接触了第二台路由,一个被刷到烂大街的路由器DB120,这个号称是OPENWRT的神器,确实名副其实,兼具电信猫和无线路由功能,更加神奇的是还支持OPENWRT这个强大的固件,拥有大量的玩家和丰富的资源,路由超频和加内存后,CPU达到400Mhz,内存达到32M,性能有了大幅的提升,关键是价格相当便宜,性价比严重突出,于是败了2台,同样在上面折腾各种应用,还算基本达到预期。

接触第三台路由,也就是现在的这台路由,是受诱惑于其令人满意的性能,680Mhz的CPU,128M的内存,支持5G的无线,于是又败了一台,并且在上面挂了1T的移动硬盘,由于有前面的经验,这次改机还算顺利。目前在上面建立了Lighttpd和Mysql服务器,FTP和SAMBA服务器以及迅雷远程下载客户端,放弃了许多花俏的功能,留下一些实用的功能。搭建网站自然不用说,FTP有时充当个人云存储的功能,迅雷远程能够在外面通过电脑或手机往路由下载电影等,充分利用带宽,下载完后直接通过电视或者电脑连接路由SAMBA服务器播放电影,访问速度令人满意,播放1080P相当流畅。对了,安装个GOAGENT,翻墙爽爽的。

至此对路由的热爱已经告一段落,但生命不息,折腾不止。

67260875.jpg

 

##针对OpenWrt 12.09版本##

1.刷固件

在管理网页上传固件,不要保留配置

2. 网页登录192.168.1.1 修改密码,在Network->Interfaces?wan->General Setup中设置成PPPoE,填写ADSL用户名和密码,保存提交就可以上网了

3. 安装U盘自动挂载

putty登录

opkg update

opkg install luci-i18n-chinese kmod-nls-cp437 kmod-nls-iso8859-1 kmod-nls-utf8 kmod-usb-storage ntfs-3g kmod-fs-vfat block-mount usbutils fdisk

在管理页面 系统?挂载点中设置自动挂载U盘(由于系统运行时间问题,/etc/init.d/vsfptd要sleep相应的时间、挂载硬盘、启动lighttpd等)

4. 安装FTP服务

opkg install vsftpd

vi /etc/vsftpd.conf

加入  local_root=/mnt/(或者是根目录/,方便管理)

/etc/init.d/vsftpd enable

/etc/init.d/vsftpd start

5.安装HTTP服务

opkg install lighttpd lighttpd-mod-fastcgi lighttpd-mod-cgi lighttpd-mod-rewrite lighttpd-mod-redirect lighttpd-mod-access lighttpd-mod-alias

opkg install php5 php5-mod-gd php5-mod-session php5-mod-pdo php5-mod-xml php5-mod-pdo-mysql php5-mod-mysql php5-fastcgi php5-mod-iconv php5-mod-simplexml

opkg install php5-mod-mbstring  php5-mod-mcrypt libmcrypt php5-mod-ctype php5-mod-tokenizer php5-mod-json php5-mod-sockets

opkg install mysql-server  libncurses php5-mod-curl lighttpd-mod-evasive libsqlite3 php5-mod-mysqli

说明:apc是一个开放自由的php opcode缓存。它的目标是提供一个自由、开放和健全的框架,用于缓存和优化php中间代码,能够大大的提高php的执行效率,但是官方12.09自带的php5-mod-apc(3.1.11)与 zend有冲突,安装后无法启动lighttpd.但通过以下语句能够正常安装和使用apc(3.1.13)

opkg install http://downloads.openwrt.org/snapshots/trunk/ar71xx/packages/php5-pecl-apc_3.1.13-1_ar71xx.ip

 

登录FTP在替换掉/etc/lighttpd/lighttp.conf   /etc/php.ini    /etc/my.cnf

 

mkdir /mnt/sda1/www

mkdir /mnt/sda1/tmp

chmod 777 /mnt/sda1/www

chmod 777 /mnt/sda1/tmp

创建数据库文件夹

mkdir /mnt/sda1/data

mkdir /mnt/sda1/data/mysql

mkdir /mnt/sda1/data/tmp

chmod 777 /mnt/sda1/data

chmod 777 /mnt/sda1/data/mysql

chmod 777 /mnt/sda1/data/tmp

vi /etc/my.cnf

datadir  =/mnt/sda1/data/mysql/

tmpdir   =/mnt/sda1/data/tmp/

创建默认的数据库

/usr/bin/mysql_install_db --force

可能会报错,没有报错最好,如果有报错,那就把附件里的数据库文件复制进去,替换那些生成的数据库文件就好了,之后再输入如下命令就可以正常启动mysql了

/etc/init.d/mysqld start

也可以输入关闭mysql,只是现在千万别输入这个命令关闭mysql!!!

/etc/init.d/mysqld stop

输入如下命令创建mysql的密码

/usr/bin/mysqladmin -u root password ******

登陆数据库

mysql -u root -p

查看当前可用数据库

show databases

g

quit

 

****以下步骤必须执行****

/etc/init.d/lighttpd enable

/etc/init.d/mysqld enable

****在安装论坛等需要MYSQL数据库的程序时需要执行以下操作****

mysql -u root -p

******

create database abcd(数据库名)

g

quit

php.ini文件中必须填写[MYSQL]部分,否则无法建立MYSQL/MYSQLI链接

extension=mysqli.so

mysql.default_port =3306

mysql.default_socket =/var/run/mysqld.sock

mysqli.default_socket =/var/run/mysqld.sock

6.安装动态域名

opkg install ddns-scripts luci-app-ddns

登录LUCI修改3322动态域名

******.3322.org

******

******

7.修改外网能够登录内网

vi /etc/config/uhttpd

修改option rfc1918_filter 0(这个文件还可以修改访问端口)

在防火墙的区域WAN:WAN中入站数据改为接受

 

8.安装SAMBA服务

opkg install luci-app-samba

opkg install samba36-server

vi /etc/config/samba

config samba

option ’name’                   ’OpenWrt’

option ’workgroup’              ’WORKGROUP’

option ’description’            ’OpenWrt’

option ’homes’                  ’1’

config sambashare

option ’name’                    ’share’

option ’path’                   ’/mnt/sda1’ #共享的目录

option ’read_only’              ’no’

option ’guest_ok’               ’no’

option ’create_mask’            ’0700’

option ’dir_mask’               ’0700’

vi /etc/samba/smb.conf.template

# invalid users = root

display charset = UTF-8

unix charset = UTF-8

dos charset = UTF-8

smbpasswd -a root(增加用户并设置密码)

/etc/init.d/samba enable

 

*******说明:

1.lighttp.conf文件修改

 

server.modules = (

"mod_alias",

"mod_access",

"mod_evasive",

"mod_rewrite",

"mod_redirect",

"mod_fastcgi"

)

server.document-root = "/mnt/sda1/www/"

server.errorlog = "/var/log/lighttpd/error.log"

server.port = 82

index-file.names = ( "index.php", "index.html","default.html",

"index.htm", "default.htm" )

fastcgi.server     = ( ".php" =>

( "localhost" =>

(

"socket" => "/tmp/php-fastcgi.socket",

"bin-path" => "/usr/bin/php-fcgi",

"max-procs" => 2,

"bin-environment" => (

"PHP_FCGI_CHILDREN" => "2",

"PHP_FCGI_MAX_REQUESTS" => "500"

)

)

)

)

evasive.max-conns-per-ip = 6

2.php.ini文件修改

short_open_tag = On

error_log = /var/log/php_errors.log

file_uploads = On

upload_tmp_dir = "/tmp"

upload_max_filesize = 8M

max_file_uploads = 20

doc_root = "/mnt/sda1/www"

extension=curl.so

extension=mbstring.so

extension=mcrypt.so

extension=pdo.so

extension=pdo-mysql.so

extension=mysql.so

extension=gd.so

extension=session.so

extension=sockets.so

extension=tokenizer.so

extension=xml.so

extension=xmlreader.so

extension=xmlwriter.so

date.timezone = prc

mysql.default_socket = /var/run/mysqld.sock

session.auto_start = 1

mysql.default_port =3306

mysql.default_socket =/var/run/mysqld.sock

3.时区错误问题

系统-系统-时区为自己的地区

opkg install zoneinfo-core  zoneinfo-asia

vi /etc/php.ini

date.timezone = "Asia/Shanghai"

 

1.配置文件.rar

2.openwrt建mysql+PHP网站的安装配置.rar

 

本文地址:http://51blog.com/?p=33
关注我们:请关注一下我们的微信公众号:扫描二维码广东高校数据家园_51博客的公众号,公众号:数博联盟
版权声明:本文为原创文章,版权归 jnussl 所有,欢迎分享本文,转载请保留出处!
PREVIOUS:已经是最后一篇了

发表评论


表情

  1. dream
    dream @回复

    请问,用R语言可否通过REST接口读取数据????

  2. TLM
    TLM @回复

    我的启动配置测试后报错:即192.168..X.1:88 就报错:Unable to launch the requested CGI program:
    /usr/bin/php-cgi: No such file or directory;怎么弄?我猜想是PHP没有启动成功。用的是你配置件;硬件:WZR-AG300H上 针对OpenWrt 12.09版本##;发现usr/bin/下的libmcrypt-config和php-cgi这俩个文件快捷变红色。

    • jnussl
      jnussl2016-05-10 at 22:56  回复

      @TLMopenwrt升级了,我把新的配置发给你,告诉我邮箱哈

  3. 米粒博客
    米粒博客 @回复

    我都没玩过

  4. 木头怀
    木头怀 @回复

    我来看看,留个脚印,自己的域名过期了,vps也不想买了,最近在折腾路由器,准备搞一个哦耶路由器,7260A,16m,128m,建个typecho应该问题不大吧?有空请教你!

  5. 似是而非
    似是而非 @回复

    您好,请问在建创数据库时报错怎么解决,看到你在上面提到过“那就把附件里的数据库文件复制进去”,请问在哪有附件呢?谢谢!