2015-09-28 87 views
1

我有一个用例,我需要能够从本地服务器访问我的网站。具体来说,这是为了将不同页面的各个部分进行html-to-pdf导出,但这对于测试网站的部分也很好。php用户级会话持久性

问题是,我们有一个登录启动页面,在我可以访问网站的任何部分之前需要处理该页面。如果我可以调用一个命令"wkhtml2pdf 'localhost/[myurl]'"并且让它具有pdf某些内容,但它会触击此初始页面,那将非常好。

有什么方法可以在服务器上持续一个会话吗?或者从本地主机启用无需登录的访问?或者我可以只添加一个新的访问我们网站的apache条目,仅限本地主机的白名单,并以某种方式绕过登录?

有没有人处理这个问题?什么是最好的解决方案?

-Scott!

+0

有很多方法可以做到这一点。一个很明显的可能是将你的逻辑和视图分开,这样可以在不触发闪屏的情况下触发你想要的HTML的生成。如果用户的IP是127.0.0.1,另一种可能性是不显示启动画面。有很多选择。 –

回答

1

您可以将您的会话cookie作为wkhtml2pdf中的参数来解决您的问题。 你也可以像这样从一个php文件中执行它。

exec("wkhtmltopdf --cookie '{$cookieName}' '{$cookieValue}' http://example.com"); 
1

现在征求对这个解决方案的反馈:我通过$ _ SERVER [“REMOTE_ADDR”]在登录脚本列入白名单的本地主机绕过通常的用户认证,并得到一个自动本地主机用户登录。但是,服务器正在大学局域网上运行,所以局域网可能真的很大,可能会启用双向TCP欺骗。我应该担心这个问题,还是有人需要路由器的管理员权限?我相信IT人员,但不仅仅是网络上的任何人......

我意识到这听起来像一个单独的问题,但我觉得安全与这是否是一个好的解决方案有关,所以..是的。