免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: hitty
打印 上一主题 下一主题

[火爆热烈讨论中......] PHP参数提交入口问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-10-31 12:01 |显示全部楼层 |倒序浏览
传统上的WEB动态页面都是分布式接收参数,每个文件都可独立接收参数,就拿CU论坛来说:

post.php  是发布与接收帖子的一个功能的程序,所有参数通过访问该文件提交。

viewtopc.php  是浏览主题的一个功能程序

...........

这样参数入口太多,造成很多安全漏洞的产生,而且不易于参数格式化、流程控制等等问题..以及做访问数据统计.....

能不能整站只用一个提交入口,如只有一个 index.php  入口
所有功能均由参数控制,如显示主题我们只用“index.php?op=viewtopc”,发贴只是用“index.php?op=post”.......

这样一来所有的参数都要通过index.php这个动态文件来检验和处理,其它文件我们可以放在非WEB访问目录中,这样是不是在一定程度上有好处?

[ 本帖最后由 HonestQiao 于 2005-11-3 23:39 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2005-10-31 13:43 |显示全部楼层
楼上说有没有 不利的地方

论坛徽章:
0
3 [报告]
发表于 2005-11-01 08:40 |显示全部楼层
从传统程序的结构方面来说,我认为单个入口是最清析的,统一定向,特别是面对一些OO结构、功能型的网站,只可能对一些新闻类型的站点不适合。

另外我还觉得维护起来比较方便.....

安全性方面实现起来比较方便,重要文件可以隐藏在安全目录中,在某种程度上可以较好地保护源码.......-_-!!

我还是没有听明白呀......至于搜索,那关健还是做好站点地图,还有URL,只是增加了一个功能参数,表明动作,其它没有什么两样?

[ 本帖最后由 hitty 于 2005-11-1 08:43 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2005-11-01 10:55 |显示全部楼层
楼上思想和观点完全错误!

何来只有一个文件?几万行?

论坛徽章:
0
5 [报告]
发表于 2005-11-16 15:25 |显示全部楼层
终于发现了一个最大的不好,分页变得很困难,除非用POST

论坛徽章:
0
6 [报告]
发表于 2005-11-16 18:03 |显示全部楼层
http://www.shippingchina.com/?pa ... essage&pageno=2

分页中有这么一个
<a href='?package=biz&module=message&pageno=1'>第一页</a>
“&pageno” 前面这些  "package=biz&module=message&........" 如何简单得来?



你的站点使用了 $_SERVER['QUERY_STRING']  参数,这不是一个好方法.....

[ 本帖最后由 hitty 于 2005-11-16 21:06 编辑 ]

论坛徽章:
0
7 [报告]
发表于 2005-11-20 15:05 |显示全部楼层
原帖由 z33 于 2005-11-18 11:35 发表


为什么不好?我不觉的。


可能并没有什么大不了,但不免人家会贴出这样的
恶作剧:


http://www.shippingchina.com/?package=biz&module=message&'><script scr='..........'></script><'

[ 本帖最后由 hitty 于 2005-11-20 15:06 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2005-11-21 08:21 |显示全部楼层
原帖由 z33 于 2005-11-20 18:07 发表



没有任何影响,我不明白恶作剧在哪里?
在URL上加<script>标签这样的字符串也完全不会有问题,也不会有任何影响。也没有什么不好的,不是么?


另外你说的:

>你的站点使用了 $_SERVER ...



好像没有过滤吧....更何况这和$_POST和$_GET没有关系啊.....

那你打开下面的URL就可以说明一定是用到了....

  1. http://www.shippingchina.com/?package=biz&module=message&'>111111111111</a><'
复制代码

[ 本帖最后由 hitty 于 2005-11-21 08:23 编辑 ]

论坛徽章:
0
9 [报告]
发表于 2005-11-21 11:28 |显示全部楼层
原帖由 z33 于 2005-11-21 10:05 发表


>好像没有过滤吧....更何况这和$_POST和$_GET没有关系啊.....

呵呵,全部过滤的,如果你说没过滤请给出理由,不要无凭无据的乱说。


>那你打开下面的URL就可以说明一定是用到了....

哦。。。 ...



我是说你看看这个页面底下的分页.....

  1. http://www.shippingchina.com/?package=biz&module=message&'>111111111111</a><'
复制代码



$_GET如何得到 QueryString

其实我想知道你的单接口是怎么返回所有的$_GET中的, key=value 这样一个 QueryString 到下个页面的,并且不包含无效的 $_GET  ....

[ 本帖最后由 hitty 于 2005-11-21 11:40 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP