问题的介绍 最近我正在研究一些请求签名algorithm,提出了在签名部分包含查询string的意见是“多样化的”。 长话短说,人们反对在string中包含查询string以进行签名的观点是查询string可以被改变(例如,值可以被改变,参数可以被删除/添加,可以被改变)。 我也从来没有经历过代理或负载均衡器中的这种行为,尽pipe我经历过诸如隐藏Authorization头(例如Apache / WSGI),修改请求方法(通过负载均衡器,可能是亚马逊的服务器做这样的事情) 。 我知道这样的行为可以在反向代理或负载均衡器上启用,使用一些自定义脚本/规则,但是可以在请求的任何部分完成。 基于假定查询string应该被包括进行了很多工作,再加上看起来很愚蠢的是,不签名请求中最重要的部分之一。 因此,我需要知道如果在原始表单中包含查询string(因为它在URL中传递)将是未来的问题。 实际的问题 所以我的问题是: 任何代理或负载均衡器通常会改变查询string? 这对我来说似乎很愚蠢。 你知道任何默认的代理或负载均衡器(软件或其安装)吗? 我相信在这种情况下,我们可以在代理/负载均衡器的层面上处理签名validation,但如果这是我们不能控制的中介机构常见的话,这可能是一个可行的论点。 请让我知道你知道什么。 让我知道,如果你有任何问题。 作为澄清,通过查询string,我的意思是以下URL中的“ ?arg1=val1&arg2=val2 ”部分: http://example.com/something/else?arg1=val1&arg2=val2 通过“ 改变查询string ”我的意思是任何可能使它看起来不同的客户端和服务器(服务器看到查询string不同于客户端使用)的任何操作。
我最近和一位同事进行了讨论。 我们需要确保在.config文件中的连接string(对于SOX合规性),并find两个选项: encryption连接stringconfiguration部分 对连接string使用Windows身份validation 在MSDN(保护连接信息(ADO.NET)) 这篇文章中提到这两种方法,但不清楚这些选项哪个更安全或哪种方法是推荐的。 那些有这两种或两种经验的人,可以请你分享一下你使用过的,为什么? 澄清我的问题 – 两个选项中哪一个更安全,为什么?
Codeigniter重写查询string,如下所示: http://somedomain.com/index.php?q=something 成为: http://somedomain.com/index.php/q/something 我想在一个(非常)轻巧的网站上模仿这种行为,我正在开发一个婚礼RSVP系统。 我不想要臃肿的代码,也不需要它提供的任何东西。 我唯一想要的就是这个。 不幸的是,我不知道如何设置一个完成这个的mod-rewrite规则。 我可以设置一个规则来将/q/something翻译成?q=something ,但是我不能在没有改变用户正在查看的URL的情况下得到这样的规则。 我基本上是在寻找一些实际上是重写的“无声”版本。 也就是说,我想要重写q/something ?q=something ,但是将用户的URL保留在地址栏中作为q/something 。 提前致谢! 编辑 在该网站的.htaccess文件中,我有以下内容: RewriteEngine on RewriteRule ^/index.php/q/(.*) /index.php?q=$1 在网站的基本configuration(/etc/apache2/sites-available/mysite.conf)中,我有: <VirtualHost *> ServerAdmin [email protected] ServerName www.mysite.com DocumentRoot /var/www/www.mysite.com Options -Indexes +FollowSymLinks </VirtualHost> index.php文件当前只是打印出$_GET['q'] 。 现在,当我访问该网站http://www.mysite.com/index.php?q=12345 ,按预期显示“12345”。 但是,当我导航到http://www.mysite.com/index.php/q/12345 ,它不显示任何东西。 或者,相反,看起来查询string的值是空的。 我不太确定我做错了什么。
所以这个问题是重复的: IIS 7.5 – 为什么我的configuration文件没有拿起,但没有答案在那里和IIS连接string不被inheritance有一个答案,但接受的答案没有帮助我。 我们在C:\ Windows \ Microsoft.Net下的每个.NET framework版本下为32位和64位configuration设置了连接点指针,以指向我们设置的文件夹C:\ TSNetConfig。 所以我们有: C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\TSNetConfig C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\TSNetConfig TSNetConfig是结点指针。 在TSNetConfig文件夹下,我们有一个SystemWideConnectionStrings.xml文件,其中包含了我们所有应用程序的所有连接string。 我们编辑每个configuration文件夹下的machine.config文件,以使其中: <connectionStrings configSource="TSNetConfig\SystemWideConnectionStrings.xml" /> 但是,由于某些原因,当我们查看IIS中每个站点的连接string时,它只有一个在部署应用程序时发布的默认string。 它没有拿起任何其他的。 我们在其他几个IIS服务器上使用这个设置,并且它们填充得很好; 但是这个服务器上的应用程序都没有select它们。 我已经检查了一些东西: 确保应用程序池设置为在适当的框架版本上运行 确保应用程序池默认在正确的框架版本上运行,如我链接的第二个问题所build议的 有什么build议么?
我试图在这里作为最后的手段尝试不同的事情/要求谷歌/阅读http://httpd.apache.org/docs/2.2/ 我在我的apache2.conf中有以下内容 # Allow cross domain fonts RewriteCond %{REQUEST_URI} (ttf|otf|eot|woff|svg) [OR] RewriteCond %{QUERY_STRING} (ttf|otf|eot|woff|svg) RewriteRule .* – [E=crossdomain:true] # Cross domain videoplayer config RewriteRule ^/video/player/config.json – [E=crossdomain:1] # Cross domain for fragments RewriteCond %{QUERY_STRING} fragment=true RewriteRule .* – [E=crossdomain:1] # Set header Header set Access-Control-Allow-Origin "*" ENV=crossdomain 所有这一切都很好。 现在,我想要的URL如下所示 Access-Control-Allow-Origin“*” …标题也是: /video/player/sources.json?contentId=AVID20150102_0012&width=640&height=360 正如你所看到的,这样一个URL几乎和上面一行中的一样: RewriteRule ^/video/player/config.json […]
我们在今天早上在我们的networking服务器访问日志中发现了一个请求,并在最后发现了一个?winzoom=1的请求。 鉴于这个networking服务器只提供固件升级文件到物联网设备(我们也控制),我们想知道它来自哪里。 特别是,我们不处理查询string,所以我们想知道是否删除它们,或者是否拒绝请求。 我试过寻找“winzoom”,但我得到的是屏幕放大软件。 如果我排除,这是一个随机的俄罗斯和中国的网站的混合物。 我还在Google上find了一些caching页面,最后是?winzoom=1 。 它是什么? 某种networkingcaching软件,我从来没有听说过? 代理? 别的东西? 如果它是一个代理(即我们的物联网设备可能通过它连接),那么我们需要忽略它。 如果这是一个桌面应用程序,我们可以简单地拒绝这个请求。 AppleWebKit / 602.4.6(KHTML,如Gecko)Mobile / 14D27 MicroMessenger / 6.5.5 NetType / WIFI语言/ EN”
我有一个看起来像这样的nginxconfiguration: location ^~ /movies { alias /var/dp.cx/movies/current/public; fastcgi_index index.php; try_files $uri /movies/index.php; location ~* \.php { fastcgi_pass unix:/run/php/php7.1-fpm.sock; fastcgi_split_path_info ^(.+\.php)(.*)$; include /etc/nginx/fastcgi_params; } } 这是一个Laravel应用程序,几乎完全开箱即用。 但是,这个configuration有一些小问题。 击中/movies触发一个404.击中/movies/工程成功。 打到其中一个分页URL( /movies/test?page=2 )没有来自查询string的信息。 我不知道我在哪里find了这个configuration,但是它似乎是我用nginx + fpm和子目录URLfind的“工作”configuration最接近的。
我正在寻找创build一个基于查询string纯粹的301redirect见b OLD URL: olddomain.com/?pc=/product/9999 New URL: newurl.php?var=yup 我正常的做法是这样的 redirect 301 pc=/product/9999 newurl.php?var=yup 但是这次我试图匹配只包含域和查询string的URL … 这样做的最好方法是什么? 谢谢
我一直在这个工作了一段时间,但我没有find我正在寻找什么。 我正在编写一个web应用程序,让我的用户在他们select的域和URL文件夹结构中创build和发布HTML内容片段。 所有内容和请求的URL结构都存储在数据库中。 我有我的index.php(在根文件夹)中的所有代码来访问数据库内容,并根据服务器名称(希望文件夹结构)将从数据库中挑出适当的内容,并显示到底用户浏览器。 所以我的情况是这样的: www.test.com/index.php?id=123234345 …将显示适当的页面,但我希望我的用户能够定义一个唯一的“页面名称”,而不是使用数字索引(我也想隐藏/index.php部分),所以我想最终用户看到的是: www.test.com/arbitrary-unique-keyword/keyword2/keyword3 这将调用根文件夹中的index.php页面。 然后我将使用PHP $ _SERVER ['PATH_INFO']variables来匹配请求的文件夹结构和我的数据库中正确的内容,并显示它。 到目前为止我发现的所有材料都希望我将文件夹结构的一部分硬编码到规则中,但是我想我想要更简单一些(也许)。 所以这个问题简而言之: 我如何使用mod_rewrite允许所有“不存在的”文件夹path传递到位于根文件夹中的主index.php? (对于所有存在的path,就像调用图像一样…我希望这些成功,而不是直接指向index.php) 谢谢大家,请让我知道,如果我能清除任何东西。
我正在寻找方法来查找包含指定string文本的文件。 它应该尽可能快,但不是那么重要。 我正在阅读手册,我已经build立了这样的东西: grep my_string * -r ,它可以工作,但如果有很多目录要search。 有没有其他方法可以在FreeBSD中find包含指定string的文件?