|
本帖最后由 karl_marx_1818 于 2016-11-5 14:16 编辑
1、编译OpenWrt时选中
Network ---> Web Servers/Proxies ---> lighttpd SSL support (NEW)
<*> lighttpd-mod-access........................... Access restrictions module
<*> lighttpd-mod-alias................................ Directory alias module
<*> lighttpd-mod-fastcgi...................................... FastCGI module
<*> lighttpd-mod-redirect............................. URL redirection module
<*> lighttpd-mod-rewrite................................ URL rewriting module
Languages ---> PHP --->
<*> php5......................................... PHP5 Hypertext preprocessor
-*- php5-cgi..................... PHP5 Hypertext preprocessor (CGI & FastCGI)
<*> php5-fastcgi...................................... FastCGI startup script
<*> php5-mod-ctype....................................... Ctype shared module
<*> php5-mod-gd.................................... GD graphics shared module
<*> php5-mod-json......................................... JSON shared module
-*- php5-mod-pdo.............................. PHP Data Objects shared module
<*> php5-mod-pdo-sqlite.............. PDO driver for SQLite 3.x shared module
<*> php5-mod-session................................... Session shared module
<*> php5-mod-sqlite3................................... SQLite3 shared module
<*> php5-mod-tokenizer............................... Tokenizer shared module
Utilities ---> database --->
<*> sqlite3-cli.......................... SQLite (v3.x) database engine (cli)
Libraries ---> database --->
-*- libsqlite3....................... SQLite (v3.x) database engine (library)
Libraries ---> SSL --->
-*- libopenssl........................... Open source SSL toolkit (libraries)
 
2、配置Lighttpd参数
root@Shanty_Server:~# vi /etc/lighttpd/lighttpd.conf
(1)开启CGI,三个位置去掉注释
server.modules = (
"mod_rewrite",
"mod_redirect",
"mod_alias",
"mod_fastcgi",
)
(2)设置网页路径
server.document-root = "/www"
(3)在任意空白行增加
url.access-deny = ( "~", ".inc",".sqlite" )
(4)修改CGI(注意红色路径设置正确)
fastcgi.server = (
".php" => (
"localhost" => (
"socket" => "/tmp/php-fastcgi.socket",
"bin-path" => "/usr//bin/php-fcgi"
)
)
)
(5)在index文件配置中增加index.php
index-file.names = ( "index.php", "index.html", "default.html", "index.htm", "default.htm" )
3、配置PHP参数
root@Shanty:~# vi /etc/php.ini
doc_root = "/www"
extension=json.so
extension=pdo.so
extension=pdo_sqlite.so
extension=session.so
extension=sqlite3.so
extension=tokenizer.so
 
4、创建一个PHP主页
root@Shanty:~# cd /www/
root@Shanty:/www# vi index.php
<?php phpinfo(); ?>
5、重启lighttpd服务
root@Shanty_Server:~# /etc/init.d/lighttpd restart
6、如果配置成功,显示如下图
 
7、在/www目录下创建index.html文件
root@Shanty:/www# vi index.html
<html>
<head>
<title>Test</title>
<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script type="text/javascript">
$(function() {
$("#button_submit").click(function(){
var formData = $("#form_1").serialize();
$.ajax({
type : "POST",
url : "ajax_php.php",
cache : false,
data : formData,
beforeSend : function(XMLHttpRequest) {
document.getElementById("status").innerHTML="Sending";
},
success : function(data, status, xhr) {
document.getElementById("status").innerHTML="Success. " + data;
},
error: function(xhr, msg, e) {
alert(msg);
}
});
});
});
</script>
</head>
<body>
<form id = 'form_1'>
<input type = text name = 'src_ip' value = ''> </br>
<input type = text name = 'dst_ip' value = ''> </br>
<input type = button id = button_submit value = 'OK'> </br>
<div id = "status"> </div>
</form>
</body>
</html>
 
8、在/www目录下创建ajax_php.php文件
root@Shanty:/www# vi ajax_php.php
<?php
header('Content-Type:text/html; charset=gb2312');
if ( $_POST[src_ip] && $_POST[dst_ip] ) {
echo "Src-IP: ", $_POST[src_ip], " Dst-IP: ", $_POST[dst_ip];
} else {
echo 'Failed: Args is not found';
}
$cmd = "python test_script.py ".$_POST[src_ip]." ".$_POST[dst_ip];
exec($cmd,$result);
?>
9、在/www目录下创建python脚本
root@Shanty-Client:/www# vi test_script.py
#!/bin/python
# -*- coding:utf-8 -*-
import sys,os,time,commands,simplejson
if __name__ == '__main__':
f = open(r'/www/1234', 'w')
f.write( sys.argv[1] + '\r\n' )
f.write( sys.argv[2] + '\r\n' )
f.close()
10、在/www目录下js文件夹,将jquery-1.10.2.min.js文件拷贝到该文件夹下
root@Shanty:/www# mkdir js
root@Shanty:/www# cd js
root@Shanty:/www/js# ls
jquery-1.10.2.min.js
 
11、验证
root@Shanty-Client:/www# cat 1234
1.1.1.1
2.2.2.2
root@Shanty-Client:/www#
12、测试数据库
(1)创建数据库和表
root@Shanty:~# sqlite3 test.db "create table my_table1 ('id', 'name', 'age');"
root@Shanty:~# sqlite3 test.db "create table my_table2 ('school', 'teacher');"
root@Shanty:~# sqlite3 test.db ".tables"
my_table1 my_table2
(2)查看数据库结构
root@Shanty:~# sqlite3 test.db "select * from sqlite_master where type='table'"
table|my_table1|my_table1|2|CREATE TABLE my_table1 ('id', 'name', 'age')
table|my_table2|my_table2|3|CREATE TABLE my_table2 ('school', 'teacher')
(3)插入记录
root@Shanty:~# sqlite3 test.db "insert into my_table1 ('id', 'name', 'age') values ('1', 'bob', '18')"
root@Shanty:~# sqlite3 test.db "insert into my_table1 ('id', 'name', 'age') values ('2', 'alice', '17')"
root@Shanty:~# sqlite3 test.db "select * from my_table1"
1|bob|18
2|alice|17
 
(4)查看表内容
root@Shanty:~# sqlite3 test.db "select * from my_table1"
1|bob|18
2|alice|17
root@Shanty:~# sqlite3 test.db "select * from my_table1" -line
id = 1
name = bob
age = 18
id = 2
name = alice
age = 17
(5)修改记录
root@Shanty:~# sqlite3 test.db "update my_table1 set age=19 where name='alice'"
root@Shanty:~# sqlite3 test.db "update my_table1 set age=20 where name='bob'"
root@Shanty:~# sqlite3 test.db "select * from my_table1"
1|bob|20
2|alice|19
(6)删除指定记录
root@Shanty:~# sqlite3 test.db "delete from my_table1 where name='alice'"
root@Shanty:~# sqlite3 test.db "select * from my_table1"
1|bob|20
(7)删除表中全部记录
root@Shanty:~# sqlite3 test.db "delete from my_table1;"
root@Shanty:~# sqlite3 test.db "select * from sqlite_master where type='table'"
table|my_table1|my_table1|2|CREATE TABLE my_table1 ('id', 'name', 'age')
root@Shanty:~# sqlite3 test.db "select * from my_table1"
root@Shanty:~#
(8)删除表
root@Shanty:~# sqlite3 test.db "drop table my_table1"
请不要胡乱输入以及粘贴、复制等方式灌水
请尊重作者、并共同维护网站的正常阅读,否则账户将会被限制发帖、回帖,并且积分可能会被清零,站内短信以及阅读权限等都会受到影响,谢谢。
具体限制方式:https://www.right.com.cn/forum/thread-8307840-1-1.html
|
|