2013-01-08 15 views
0

我想链接到一个新的选项卡,一个外部页面并将其应用于我自己的CSS,它会更改此外部页面的总体布局。该CSS在另一台服务器上。将自己的CSS应用到外部页面

可以这样做吗?

我使用php,jquery和Apache服务器。

我想在我的服务器上使用一个php代理请求外部页面并添加css,但可能,如果这是一个解决方案,它会更有效率。

谢谢!

+1

取决于你的实际目标是什么浏览器插件或书签可能是一个更好的主意 – Stefan

+0

斯蒂芬的想法听起来像是一个非常好的解决方案,您的问题,我会建议寻找。 – Happy

+0

这个想法是获取外部页面,调整大小,并将其显示给用户。所有这些都来自我的移动网络应用 对不起,如果我没有解释得很好! 谢谢 – gonzalomelov

回答

2

将页面下载到您的服务器,应用CSS然后将页面显示给用户(代理)是实现此目的的唯一方法。如果这个网站不安全并且有可以注入的漏洞,那么你可以用黑帽的方式来做这件事......但是我怀疑它的不安全性,如果这里有人会给你一个讨厌的方式来做到这一点,怀疑它会恢复到原来的css并且修补漏洞。

想想安全风险是否可行。 CSS是严重的强大,这些天,想象一下,如果你可以改变在google.com上的CSS - 趣味次:d

1

不,它不能以代理以外的其他方式完成。

+0

或者一些跨站点脚本...:S –

1

注入CSS到嵌入式IFRAME(或更一般地做任何事情孩子的能力, iframe)会打开一个巨大的安全漏洞。

想象一下,您将显示一个iframe到我使用的网络邮件服务,并对其进行大量重新设置,以便我的“撰写回复”页面看起来像邮件服务中的“确认密码”页面。当我天真地输入密码时,会通过电子邮件将密码发送给答复者!

您可以使用浏览器插件或扩展程序来实现您的目标。访问一个网站应该要求零信任,但安装一个exntesion通常确实意味着来自用户的一些信任,所以扩展比普通网页有更大的自由度。

请注意,服务器代理获取不会发送用户的会话/授权cookie,因此如果您尝试获取需要登录的站点(例如Facebook),则只能获取公共资源。

+0

幸运的是该站点是公开的。我会尝试做或找到一个PHP代理来做到这一点。谢谢! – gonzalomelov

0

根据你想达到什么,可能会有更好的方法。如果您正在计划将它分发给许多用户,例如broser plugin,或者可能更容易创建UserScript,例如Greasemonkey/Tampermonkey等插件。另一种方法是创建bookmarklet供用户在其浏览器栏中单击。看看这里:http://benalman.com/projects/run-jquery-code-bookmarklet/它很容易创建。

相关问题