第七章Openwrt安装服务器环境php+uhttpd+mysql
在前面的文章中刷openwrt、配置网络环境、挂载u盘都配置成功了之后,下面的操作就变得简单起来!!!!
1. putty连接到路由器
2. 安装php
opkg install php5-fastcgi php5-mod-gd php5-mod-xml php5-mod-ctype php5-mod-session php5-mod-sockets php5-mod-tokenizer
opkg install php5-mod-mcrypt php5-mod-mbstring php5-mod-pdo php5-mod-curl php5-mod-mysql
安装完后进行下面步骤
3. 修改php.ini
vi /etc/php.ini
原来的文件都用";"注析的,找到下面的字段修改为如下:
short_open_tag = On
error_log = /var/log/php_errors.log
file_uploads = On
upload_tmp_dir = "/tmp"
upload_max_filesize = 20M
max_file_uploads = 200
doc_root =
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 = Asia/Shanghai
mysql.default_socket = /var/run/mysqld.sock
session.auto_start = 1
至此php安装完成。
4、安装mysql
opkg update
opkg install mysql-server
5、修改配置文件
vi /etc/my.cnf
内容如下:
datadir = /mnt/data/mysql/ #数据保存路径
bind-address = 0.0.0.0 #绑定的ip地址 //////建议设置为路由的IP,这样的话就可以在终端putty访问--则本机访问,而且可以远程登陆访问
6、创建mysql数据目录
mkdir -p /mnt/data/mysql
mkdir -p /mnt/data/tmp
7、初始化建库
mysql_install_db --force
8、以关闭授权的方式启动mysql
mysqld --skip-grant&
9、进入mysql,修改账号连接权限
mysql -u root mysql
进入mysql以后出现mysql>提示符,再修改账号连接权限:
mysql> update user set host='%' where user='root' and host='localhost'; //这样正确运行
//update user set host = '%' where user = 'root';这一句会出现问题的
mysql>update user set password=PASSWORD('123456') where user='root';
mysql>flush privileges;
10、重启mysql,以授权验证方式启动(为了系统安全)
killall mysqld
/etc/init.d/mysqld enable #开机运行
/etc/init.d/mysqld start #启动MySQL服务
11、连接测试。
随便找一台可以上网的电脑,原作者使用的Navicat for MySQL软件,没有的可以到我这里下载:http://pan.baidu.com/share/link?shareid=355413&uk=908253079。
安装完之后打开软件:

点击 文件 -> 新建连接:
输入自己的动态域名,路由账号、密码,点击确定:
发现列表里多了一个Magic的选项,右键点击打开连接:

现在已经看到Magic里面的表了,新安装的数据库可能跟我的表不一样。
至此数据已经安装成功,可以正常使用了。
12、安装ftp
我下载的OpenWrt是集成ftp服务的。如果没有集成,可以自己安装。
步骤:
opkg update
opkg install vsftpd
/etc/init.d/vsftpd enable
/etc/init.d/vsftpd start
下面就可以用flashxp之类的工具连接路由器访问ftp服务了。该段引用自于飞的博客http://blog.csdn.net/yufei_email/
13、建立个人网站Magic目录
mkdir /mnt/web
14、修改uhttpd配置
vi /etc/config/uhttpd
将路由器管理页面的端口从80改成其他的端口,以后自己要访问路由器管理页面,就从这个新端口访问,比如:这里将端口改成了88,以后要管理路由器就用浏览器访问:192.168.2.1:88。我们要把默认的80端口留给自己将要架设的网站。

在配置文件末尾增加自己的网站:

15、 将自己做好的php网站主页面取名为index.php, 并使用ftp上传到/mnt/web目录下面,再重启uhttpd。
/etc/init.d/uhttpd restart
至此,就可以通过http://192.168.2.1/index.php 不输入index.php我的不能访问这个网址访问自己做好的php网站了。路由器已经集成了mysql,php,http服务,整个系统运行于U盘之上,空间可以扩展至自己需要的大小。

感谢:
http://superyjcqw.blog.163.com/blog/static/16105830520117111040436/
http://blog.csdn.net/yufei_email/
http://blog.segmentfault.com/openwrt/1190000000380308
注意:操作路由有一定的风险~~小心操作。。注意备份~~下面将会送上网络转串口功能!!!!!!!!!!
第七章Openwrt安装服务器环境php+uhttpd+mysql的更多相关文章
- CentOS7.X安装LMMP环境Nginx+PHP+Mysql详解
前言: 作为PHP开发者,我们常用的线上环境就是LNMP,合理的搭建也是必须掌握的技能,下面就利用源码的方式详细介绍下LNMP环境Nginx+PHP+Mysql的详细搭建步骤: 版本说明: Nginx ...
- linux安装lamp环境(linux+apache+mysql+php)
源码安装 本次使用 Centos7.2 MySQL5.7.22 Apache2.4.37 PHP5.6.38 安装Apache 安装httpd和所需依赖:gcc, apr, apr-util,apr- ...
- 第十四章 openwrt 安装 python
需要安装libffi,python-mini,python.libffi以及python-mini需要安装在python之前 如果部分软件包不一样可以在下面的web后台搜索,搜索前先opkg ...
- Linux 下安装 java 环境(jdk + mysql + tomcat)
Linux选用的是 centOS 6.8 64位 ,最先要将 centOS 中自带的 jdk 和 myqsql 卸载掉. 首先安装 了 SSH,通过 SSH 将 jdk,mysql,tomcat 的压 ...
- Centos7 在线安装开发环境 jdk1.8+mysql+tomcat
写在最前 刚刚开始接触Linux,并折腾着在服务器上部署自己的项目,当然作为一个后端开发人员,必不可少的东西肯定是 JDK Mysql Tomcat容器 每天记录一天,每天进步一点点~~ 1.更新系统 ...
- CentOS7 安装lua环境(我是在mysql读写分离用的)
下载地址:http://www.lua.org/download.html 安装方法: 依次执行以下命令: curl -R -O http://www.lua.org/ftp/lua-5.3.1.ta ...
- CentOS6安装各种大数据软件 第七章:Flume安装与配置
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- python服务器环境搭建(2)——安装相关软件
在上一篇我们在本地的虚拟服务器上安装好CentOS7后,我们的python web服务.自定义的python service或python脚本需要在服务器上运行,还需要在服务器安装各种相关的软件才行, ...
- python服务器环境搭建——安装相关软件
在上一篇我们在本地的虚拟服务器上安装好CentOS7后,我们的python web服务.自定义的python service或python脚本需要在服务器上运行,还需要在服务器安装各种相关的软件才行, ...
随机推荐
- Python的数值和字符串
Python数据类型 1.数值 --类型: 1/整型 2/长整型 3/浮点型 -- 0.0, 12.0, -18.8, 3e+7等 4/复数型 -- complex In []: 0x34al ...
- WEB前端之HTML5~HTML5与HTML4的区别
推出的理由及目标 WEB浏览器存在的问题包括以下三点 世界知名浏览器厂商对HTML5的支持 语法的改变 DOCTYPE的声明 XHTML的DOCTYPE声明方式 HTML4的DOCTYPE声明方式 H ...
- 虚拟机 VMware Workstation12 安装OS X 系统
Windows下虚拟机安装Mac OS X —– VMware Workstation12安装Mac OS X 10.11 本文即将介绍WIN虚拟MAC的教程.完整详细教程(包含安装中的一些问题) ...
- linux命令(32):free命令
1.显示内存使用情况:free free –g free –m 2.以总和的形式显示内存的使用信息: free -t 3.周期性的查询内存使用信息:free -s 10
- 微信小程序获取用户信息“授权失败”场景的处理
很多的时候我们在处理小程序功能的时候需要用户获取用户信息,但是呢为了信息安全,用户不授权导致授权失败场景:但是小程序第二次不在启动授权信息弹层,为了用户体验,可以用以下方式处理: function i ...
- centos 磁盘分区格式化与挂载
1 查看系统里硬盘信息fdisk -l 2 磁盘分区fdisk /dev/sdc输入m显示帮助a:命令指定启动分区:d:命令删除一个存在的分区:l:命令显示分区ID号的列表:m:查看fdisk命令帮助 ...
- Ionic-wechat项目边开发边学(四):可伸缩输入框,下拉刷新, 置顶删除
摘要 上一篇文章主要介绍了ion-list的使用, ion-popup的使用, 通过sass自定义样式, localStorage的使用, 自定义指令和服务. 这篇文章实现的功能有消息的置顶与删除, ...
- python判断一个对象是可迭代?
1.介绍一下如何判断一个对象是可迭代的? 通过collections模块的Iterable类型判断: >>> from collections import Iterable > ...
- 洛谷P1955 [NOI2015] 程序自动分析 [并查集,离散化]
题目传送门 题目描述 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足. 考虑一个约束满足问题的简化版本:假设x1,x2,x3...代表程序中出现的变量,给定n个形如xi=xj或x ...
- Meeting Rooms II -- LeetCode
Given an array of meeting time intervals consisting of start and end times [[s1,e1],[s2,e2],...] (si ...