Skip to content

landscape-flow/phpStu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

phpStu

https://github.com/WhiteWhiteDuck/phpStu

一个关于将长url转换成一个短url进行重定向访问的问题: ·思路 1,获取url并做好传值,如何沟通前后端 => javascript;安全相关 xss SQL注入 etc。

	2,使用 PHP 设置一个发号器 对于任意给我的一个url ,将其转换为loacalhost/xxxx;

	3,将localhost/xxxx与www.xxxxx.com 建立映射表(基于mysql数据库存储于本地服务器端);

	4,编写本地网页localhost/xxxx 的重定向操作 => 		
		访问local服务器数据库传递自身url由映射关系得到目标url并返回 =>
			拿到返回的url修改header对其本身网站发出请求完成重定向; 

·详细方法步骤
 	长url的录入 => 长url值的传递 => 如何构建一个生成短url的策略 => 立长url和短url的映射 => 关系的存储 =>新文件新header的生成

·实现方法
	 1.url使用get方法用form表单录入
	 2.长url与短url使用一个带有自增主键id的 基于mysql的数据库存储 	且会在有新的longurl插入时 根据primary key id 生成独一无二的短url
	 3.在同一网页中,使用Ajax技术实现异步传递long_url获取返回值responsetext并赋值给span
	 4.短url的生成很简单:每来一个新的url  使用 select max(id)from table 获取当前的最大id值并加1 生成一个当前的max_id,再使用发号器(一个小的 进制转换器 拿到id值 将其变为一个26进制(最高可62进制)的字符串 并返回 再与"http://bian.com/  ".url.".php"进行一个简单的字符串拼接得到 我的shorturl。
	 5.然后将shorturl 和longurl 对应插入到我的新表中,主键 id auto ++;
	 6.最后使用openfile创建一个名为 $short_url.php  的目标网站 供实现重定向

·注意
	 1.有表单的提交需要预防xss 和sql注入  目前只简单防止了xss攻击(使用 htmlspecialchars($url, ENT_QUOTES)函数,sql注入因为有点不知道怎么处理。
	 2.挺多需要考虑,但是因为能力和时间因素没有去做的东西: 
	 	a.信息在传输中的安全问题 。
	 	b.发生高并发请求时的解决方案。
	 	c.多次访问请求数据库的时间损耗(想要实现一个cookies以加快查询,但是可能我的考虑有问题导致我认为逻辑上不可行或者无意义)。
	 	d.界面可以更人性化一点。 
	 	e.代码编写上不够正规,有点乱,编程能力一般。
	 	f.发号机制可能过于取巧,不知道能否应对更复杂的情况或者说是否会带来额外开销。
·心得
	还有对这几个比较生疏的语言和领域 ,编写基础代码上浪费了比较多的时间,在这里感谢我的室友王建民在我有问题的时候能帮助我解决一些问题然后相互讨论,学到了很多。
	也算是动起手来了吧,自己玩了一两年,动手能力比较差了,然后一些基础课程,关键课程也是边学边忘,越是感觉到基础的重要性 特别是数学。一定要好好规划一下,抓紧时间学习才行
	git就大概看了一下,也是pull上的,不是那啥直接拖上去的( >。> 小王是把代码拖上去的!!!!!他不会用git hhhhh);一些前端的请求模板是直接从 w3c 上拿过来用的参考很多博客查了很多东西,具体也记不起来了,感谢了。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published