目标和需求:

(1)通过网页查询并设置开发板的网络参数,要求至少可查询IP地址、子网掩码、网关、MAC地址,可设置自动获取IP或固定IP,设置包括查询的内容

(2)使用CGI编程+HTML实现简单数据交互即可,不考虑样式设计

开发环境是Ubuntu14.04

这是实习时在公司做个一个练手的小项目。或许是在学校养成的习惯,发现自己做东西时总是想到一点就做一点,秉承的思想就是一点一点的小功能终究会实现最终的目标。但是发现这样的好处就是分解出来的功能简单,坏处也更明显,由于缺少整体的规划在这个过程中会发现有时候这些小功能的实现方法就有可能会不适用,甚至会增加整体实现的难度。所以一开始学到的就是:动手之前一定要想清楚。

CGI和HTML是以前没有接触过的,但是要感谢网络的大神,CGI和HTML的结合使用要借助于boa服务器(参考网络实现的),一开始想着去实现的是设置功能,于是就用HTML获取到的信息在CGI程序部分试着用命令去执行(在Ubuntu中做的测试)却发现这样是不行的,考虑到CGI程序不能修改本地的网络参数(在做测试的时候发现修改失败)就开个线程把这些设置参数送到本地,在本地的程序中去修改,这样设置部分就得到了解决。

显示部分是在本地用查询命令得到的结果重定向在一个文件中,在CGI程序中访问这个文件,从而得到查询信息。

后来又想到对配置文件进行读写也可以达到这样的目的。在设置时直接把修改信息写到网络参数的配置文件中,查询的时候直接读取配置信息文件。

学习使用CGI和HTML的更多相关文章

  1. 网关协议学习:CGI、FastCGI、WSGI

    网关协议学习:CGI.FastCGI.WSGI https://www.biaodianfu.com/cgi-fastcgi-wsgi.html

  2. Python学习笔记-CGI编程(如何在IIS上挂Python开发的Webservice)

    一.如何用Python开发一个简单的Webservice 利用python的cgi编程,可以传入参数将结果输出. 定义需要编码以及需要引用的模块 #conding=utf-8 #修正中文乱码 impo ...

  3. 吴裕雄--天生自然 PYTHON3开发学习:CGI编程

    <Directory "/var/www/cgi-bin"> AllowOverride None Options +ExecCGI Order allow,deny ...

  4. 编写我的第一个CGI代码——python学习

    在编程学习网站学习Python语言,学习到cgi编程章节遇到了一些小问题,课程介绍的为linux环境的Apache配置方法,具体如下: [linux环境配置方法:] 在进行CGI编程前,确保您的Web ...

  5. 通读Python官方文档之cgi

    cgi 通用网关接口 前驱知识 网关协议学习:CGI.FastCGI.WSGI 简单点说: web服务器接受请求,启动CGI:CGI接受请求,处理,返回给服务器:服务器返回给用户 cgi效率不高,每次 ...

  6. Python构建发布

    click python配置apache的web服务器方法(python的CGI配置) python中的编码问题 http://blog.csdn.net/wyb_hardworking/articl ...

  7. python练习五—简单web应用

    配置apache 我以前web开发基本都是基于java平台的,比如tomcat,servlet等等,由tomcat接收http请求,然后交给servlet处理,servlet处理完成以后把返回结果交给 ...

  8. 用python搭一个超简易的文件服务器

    这个文件服务器纯粹是在学习python cgi编程时,顺便玩玩而已,因为搭文件服务器的话完全可以linux,简单方便,这里就是随便玩玩,功能也就是只能下载文件 1.登录页面,做个简单验证 新建一个ht ...

  9. CGI编程学习----查询2000W开房数据

    原文:CGI编程学习----查询2000W开房数据 0x01:什么是CGI编程? CGI:Common Gateway Interface CGI代表Common Gateway Interface( ...

随机推荐

  1. js - 基础 之 预编译总结

    js运行步骤 语法解析(检查有无语法错误) 预编译 解释运行(将 js 翻译成计算机识别的语言(0.1组成),翻译一行执行一行) 预编译 [全局]: 创建 GO( Grobal Object ) 对象 ...

  2. dijkstra算法之优先队列优化

    github地址:https://github.com/muzhailong/dijkstra-PriorityQueue 1.题目 分析与解题思路 dijkstra算法是典型的用来解决单源最短路径的 ...

  3. eclipse中没有server选项无法配置Tomcat

    eclipse集成Tomcat: 打开eclipse - 窗口 - 首选项 - 服务器 - 运行时环境 找到Tomcat然后添加. eclipse添加插件: 开发WEB项目时要集成Tomcat可以并不 ...

  4. jvm——参数解释

    https://www.oracle.com/technetwork/java/tuning-139912.html#section4.2.5 https://docs.oracle.com/java ...

  5. List集合中对象的排序

    使用到的是: Collections.sort(); 用法是: List<Book> list_book = new ArrayList<Book>(); Book book= ...

  6. C#之扩展方法 default(T)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  7. MoreExecutors工具类使用

    MoreExecutors是guava提供的工具类,是对jdk自带的Executors工具类的扩展,主要方法如下: 1.addDelayedShutDown()方法的两个重载: public stat ...

  8. Composite UI Application Block(CAB)

    序言 资料 https://www.cnblogs.com/lglruirui/archive/2010/06/21/1761737.html?tdsourcetag=s_pcqq_aiomsg ht ...

  9. hadoop伪分布式平台搭建

    1. 安装jdk1.7 JAVA_HOME=/home/hadoop/app/jdk1.7.0 vi /etc/profile.d CLASSPATH=.:$JAVA_HOME/lib/dt.jar: ...

  10. 游标定位:Cursor类

    关于 Cursor Cursor 是每行的集合. 使用 moveToFirst() 定位第一行. 你必须知道每一列的名称. 你必须知道每一列的数据类型. Cursor 是一个随机的数据源. 所有的数据 ...