小编lee*_*d00的帖子

使用目录名称中的下划线进行URL编码?

我在工作中遇到了一个奇怪的争论,我可能在这方面错了,所以这就是我要问的原因.

我们的软件将目录输出到Apache服务器,该目录替换名称为%5F的下划线.

例如,如果目录的名称在我们的软件中列为字符串,那么它将是:"andy_test",但是当软件将目录输出到Apache服务器时,它将变为"andy%5Ftest".不幸的是,当您访问服务器上的URL时,它最终变为"andy%255Ftest".

不知怎的,这似乎对我来说是错误的,再一次进展是:

  1. andy_test < - (作为软件中的字符串)
  2. andy%5Ftest < - (列为服务器上的目录)
  3. andy%255Ftest < - (必须在从Web浏览器调用与服务器上的URL相同的目录时使用.)

我假设"%5"编码为下划线,而"%25"编码为"%".

现在在我看来,目录名称应该在服务器上列出的方式只是简单的andy_test,如果你使用的是编码的URI,那么你可能最终得到"andy%5Ftest"来访问目录apache服务器.

我问后端的人有关它,他们说他们只是:"编码任何不是字母或数字的东西.

所以我想我对此有点困惑.你能告诉我谁是对的,并指导我一些有关原因的信息吗?

apache directory encoding apache2 url-rewriting

7
推荐指数
1
解决办法
2万
查看次数

这适合您对回调的定义吗?

回调的定义:

在Component中设置为属性的Function.并且通常在组件上发生某些事件时调用.

例如:

如果您希望在用户单击Component componentB时显示一个显示"我被点击"的对话框,您可以编写一个存储为变量的方法来执行此操作:

var mouseDownCallbackFunction = function() {
    alert("I was clicked!");
};
Run Code Online (Sandbox Code Playgroud)

接下来,您将在组件内部设置此功能,如此...

// Set the Component to display the dialog when the 
// user presses the mouse down on it.
componentB.setMouseDownCallback(mouseDownCallbackFunction);
Run Code Online (Sandbox Code Playgroud)

这将导致mouseDownCallbackFunction 在单击组件时在警告框中显示"我被点击".

javascript oop definition callback

6
推荐指数
1
解决办法
1703
查看次数

mysql_real_escape_string()完全删除字符串

我正在逃避从php表单收到的所有字符串参数,如下所示:

$usr_name = mysql_real_escape_string($_REQUEST['usr_name']);
Run Code Online (Sandbox Code Playgroud)

避免SQL注入的一些问题.但是当我从函数中恢复我的字符串时,我什么都没有结果.

另外,我在PHP日志中不断收到这个奇怪的警告:

PHP Warning:  mysql_real_escape_string() [<a href='function.mysql-real-escape-string'>function.mysql-real-escape-string</a>]: A link to the server could not be established in /hermes/bosweb/web279/b2798/ipw.bankingforms/public_html/formAckResponse_controller.php on line 39
Run Code Online (Sandbox Code Playgroud)

主机使用:PHP版本4.4.7

php mysql mysql-real-escape-string

6
推荐指数
1
解决办法
3506
查看次数

TDD如何与功能编程语言进行比较?

TDD如何与F#和Erlang等功能编程语言进行比较?

我还没有直接使用函数式编程语言,但从我所看到的,你有一个等式的两个方面,他们必须像代数或会计一样平衡; 这似乎有点让人想起TDD,你将期望的输出定义为Assert语句(等式的一边),其余的功能进入与测试分离的类(等式的另一面),除了函数式编程恕我直言似乎有点清洁.

两者实际上是否有相似之处,或者我只是过度思考这一点?

tdd erlang f# unit-testing functional-programming

6
推荐指数
3
解决办法
2178
查看次数

您应该从提交中排除 Firefox 配置文件的哪些文件夹/文件?

我正在尝试在 git 中存储 Firefox 配置文件。我已将其配置为使用代理,并且我希望能够在再次检出代码时提取配置文件。

据我从文档中可以看出,有一个Cache文件夹和一个Offline Cache文件夹可能不应该包含在内,因为它们只是缓存文件夹,对于保留加载 Firefox 配置文件时要使用的代理设置没有任何意义。

profile 文件夹中是否还有其他不值得包含在提交中的内容,因为它与以下内容无关:

  1. 防止加载配置文件。
  2. 防止在下次结帐时加载代理设置

我试过添加以下内容:

# Ignore FF Cache
ProxyProfileFF/cache2/**
ProxyProfileFF/OfflineCache/**
ProxyProfileFF/jumpListCache/**
ProxyProfileFF/startupCache/**
ProxyProfileFF/saved-telemetry-pings/**

# Ignore vim temp files
*~
Run Code Online (Sandbox Code Playgroud)

git version-control firefox firefox-profile

6
推荐指数
1
解决办法
616
查看次数

Windows Powershell 中 runas /netonly 的等效项是什么?

是否可以像使用启动程序时使用不同的 Kerberos 令牌进行网络访问一样从 Powershell 启动程序runas /netonly

powershell kerberos active-directory powershell-5.0

6
推荐指数
1
解决办法
8065
查看次数

通过SSH本地端口转发正常访问时指定gitea服务器Gitea Base URL?

在我的 gitea 服务器上,我通常通过 ssh 本地端口转发访问它;并且无法从外部访问它,因为我将其绑定到本地主机地址。

我通过“本地端口转发”访问它http://127.0.0.1:8080,它认为它是从http://127.0.0.1:3000;访问的。所以某些功能(例如维基中的预览和问题不起作用(但是您可以保存它们,只是不预览它们);无论如何它配置错误,请参见下文,我想更改,以便Gitea Base URL随时服务器当前写入http://127.0.0.1:3000它将http://127.0.0.1:8080改为写入(但也就是说,如果它仍然在端口上运行,那就太好了3000):

gitea配置

哪一行gitea.ini改变了这个功能?或者更像是我需要在它前面放置一个反向代理来为我重写 URL 的情况?

git reverse-proxy gitea

6
推荐指数
1
解决办法
1万
查看次数

如何让gvim与Visual Studio 2010很好地配合?

在我上一份工作中,他们使用Visual Studio 2005(偶尔使用Visual Studio 97),为了方便命令行,我使用vim来编辑Mercurial版本控制配置文件,如hgrc和.hgignore

然而,我的同事很快就开始抱怨vim会改变文件的编码,并且会在Visual Studio中弹出一条消息,告诉他们编码差异.

之后我停止使用vim,最后编辑了Visual Studio中的文件.

我可以对vim的配置进行任何更改,以免发生这种情况吗?

我会使用记事本来编辑我的文件,但它总是把那个讨厌的.txt扩展名放在我文件的末尾.

我也知道像Notepad ++这样的解决方案,但我只是想知道在vim中是否有解决方案.

vim visual-studio-2010 visual-studio-97

5
推荐指数
1
解决办法
1261
查看次数

如果在hg mq补丁队列中的单个补丁中进行了太多更改,该怎么办?

hg mq插件的目的是能够对您的存储库进行完美的提交,而不是混淆您通过代码在您心不在焉的ADHD引起的漫游中所做的更改;

例如....

当我注意到bug y并开始研究bug时,我正在研究bug x.此时,您应该在修补程序队列中创建一个新修补程序,以便在将更改hg qfinish提交到存储库时不要混淆这些更改.

现在假设您忘记制作新补丁并在此过程中hg qrefresh.然后意识到你的错误,你希望将那个补丁的变化分成两个补丁.

我意识到它与编辑队列中的补丁文件(和新的补丁文件)有关,可以将更改分成单独的补丁和以后的提交.但是,我还不熟练编辑diff补丁文件.

我在哪里可以了解到这一点?怎么会这样呢?

diff mercurial patch mercurial-queue

5
推荐指数
1
解决办法
340
查看次数

如何阻止流浪汉在Windows的每个“流浪汉”上都必须重新下载映像?

vagrant up第一次在Windows上运行时,我希望它先下载然后缓存该框。但是,如果我vagrant halt随后运行,vagrant up我最终将不得不等待15分钟才能下载并重新组装计算机。当我运行时vagrant box list,它指出它的基本框已在其中列出,那么我还需要做什么来使用缓存?

    default: Downloading: https://atlas.hashicorp.com/ubuntu/boxes/trusty64/vers
ions/20150902.0.0/providers/virtualbox.box
    default: Progress: 94% (Rate: 301k/s, Estimated time remaining: 0:01:20))
Run Code Online (Sandbox Code Playgroud)

我记得读某处的文件中,有一个config.vm.box_check_update,将导致它来检查每个更新版本当前框的vagrant up,但我没有看到它在上市VagrantfileWordPress的-VVV

virtualbox vagrant vagrantfile vagrant-windows vvv-wordpress

5
推荐指数
0
解决办法
1335
查看次数