我知道这是可能的使用mod重写在我的htaccess
采取:
http://example.com/directory/perlscript.pl?base64encodedquery=jhfkjdshfsdf78fs8y7sd8
创建一个更短的URL:
http://example.com/? whatever just want to make it prettier
传入:我使用use CGI;
,因此$qry->param('base64encodedquery'));
然后我使用use MIME::Base64
解码查询字符串(之前编码)。
我真的不需要编码和解码查询,但我正在学习,只是想屏蔽/隐藏我的查询字符串,包含多达15个短参数。
我倾向于一个Perl模块,缩短网址,我正在积极搜索。实际上,我不认为我的编码查询可以用于mod重写。所以我也会采纳模块建议。
2条答案
按热度按时间oknwwptz1#
由于您打算在某个时候使用HTML表单生成对perl脚本的请求,因此这是一个非常简单的解决方案。您可以通过向表单标记添加
method
属性来告诉浏览器发出HTTP POST请求,而不是通常的HTTP GET请求,如下所示。浏览器将向“http://example.com/directory/perlscript.pl“发出请求,但不会有查询字符串-而是通过STDIN传递表单数据。但是你并不需要知道这一点,因为无论你使用什么框架,都应该透明地处理这一点,并提供对传入参数的访问,就像它们是通过URL传入的一样。
dhxwm5r42#
我不清楚你需要做什么,但如果你只是想从URL中删除路径和查询,那么你可以使用
URI
模块输出