我试图弄清楚IIS7.5中Handler Mapping的含义以及IIS如何使用这些信息来决定谁执行什么.
例如,我看到几个带有*.aspx路径的条目.哪一个获胜?可能是某些条目仅在启用Classic Pipeline时适用,而其他一些条目仅在使用Integrated管道时适用?并且位数(32位,64位)会影响哪些条目?
如果有人可以解释(或有一个链接解释)当一般的HTTP请求到来时IIS7.5做什么(就"调度"/"路由"/"你!处理那个!"而言):
GET /blabla/dummy.bla HTTP/1.1
Host: blabla.org
Run Code Online (Sandbox Code Playgroud)
稍后我会对IIS Rewrite Module或ARR如何工作感兴趣,但是现在我只对Handle Mapping配置感兴趣.
预先感谢!
我在看IIS7.5配置(system.webServer/handlers).
你知道什么是之间的性差异\*.
,并\*
在处理程序的路径参数?你能使用file.*
(匹配file.txt和file.xml)还是abc.a?c
(匹配abc.abc和abc.asc)?
path参数可以引用"文件夹"吗?喜欢\*\f4\*.txt
?
给出像http的请求
GET \f1\f2.f3\f4\a.b.c?arg1.arg2.arg3=3&arg4.txt=1.4
Run Code Online (Sandbox Code Playgroud)
path参数试图匹配的部分是什么?
member
在Active Directory中修改组的属性(比方说asdiedit
),会自动修改memberOf
相应用户的属性吗?
作为次要问题,组中的设置成员会allowedAttributesEffective
自动在allowedAttributesEffective
所有用户的属性中添加memberof 吗?
我还没有修改member
属性的权限,所以我不能自己测试.
我正在尝试使用 C++Builder 编写一个“Hello World”示例。这是我的第一个项目,所以我可能犯了一个简单的错误。
我想创建一个调用计算器 Web 服务的控制台应用程序。
我打开 C++Builder 2007 并创建一个控制台应用程序。将出现一个名为 File1.cpp 的 cpp 文件。这是内容:
//---------------------------------------------------------------------------
#include <iostream.h>
#include <vcl.h>
#pragma hdrstop
#include "calculator.h"
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
double a, b;
cout << "Enter the values to sum\n";
cout << "A: ";
cin >> a;
cout << "B: ";
cin >> b;
cout << "\nA+B:";
cout << GetCalculatorSoap()->Add(1,2);
cout << "\n\nPress any key to continue...";
getchar();
return 0;
}
//---------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
另外,我将肥皂代理添加到 New->Other->WebService->WSDL Importer 中。使用 WSDL …
所有问题都与.net Framework 2.0中的.net项目dll有关,该dll将自身公开为COM。
1)如果我们在源代码(typelib,类,接口)中未指定任何GUID,那么谁在生成GUID?编译还是高潮?
2)GUID值存在于dll,tlb或两个文件中吗?
3)任何具有相同源代码的开发人员都会在其生成或运行重装的机器上独立生成非常相同的GUID?
4)如果我通过现有的dll和tlb文件运行regasm,如果dll和tlb不匹配怎么办?Regasm使用最新元素和GUID重新生成tlb文件吗?还是将TypeLib注册到当前的tlb文件?
5)使用dll和tlb参数设置运行regasm有什么意义?Tlb文件是部署内容的一部分,还是最佳做法是仅部署dll,让regasm快速生成tlb?
6)最后一个问题,真的需要tlb吗?拥有tlb文件的意义是什么?并非所有信息都已在注册表中?它提供了什么额外的信息?
7)在注销时,我们需要提供什么?dll文件?Tlb?都?如果dll(或tlb)与现有的reg条目不匹配怎么办?如果已经用tlb选项注册,但是我只运行dll的regasm unregister,它也会删除TypeLyb条目吗?
8)关于位,再充气也总是在SysWow64下生成条目吗?Framework64下的重制与Framework下的重制相同吗?
特别是当没有实时线程引用它时。
我认为 GC 会考虑所有 .net 线程来查找引用...它是否也检查其他地方的引用?
编辑:例如,假设我们在控制台应用程序中,主调用创建本地 task1 的方法,然后应用 task1.ContinueWith(task2) 并返回主,主执行 console.readline()。
此时可能是 task1 已完成,task2 仍未启动,GC 可以启动,并且没有线程引用 task2。为什么 task2 没有被 GC 处理?
EDIT2:可能我在说“任务”时没有使用正确的词
using System;
using System.Runtime.InteropServices;
using System.Threading;
using System.Threading.Tasks;
namespace ConsoleApplication
{
class Program
{
static void Launch()
{
var task1 = Task.Run(() => Thread.Sleep(60000))
task1.ContinueWith(() => WriteToFile("Hi"));
}
static void Main(string[] args)
{
Launch();
//At this point if a GC occurs which thread or static file has a reference to "()=>WriteTofile("Hi")" ?
Console.ReadLine();
}
Run Code Online (Sandbox Code Playgroud)
有一个主线程在等待控制台,一个线程(可能来自线程池)运行 Sleep。就在 Sleep …
.net ×2
asp.net ×2
iis-7.5 ×2
c++builder ×1
com ×1
handlers ×1
regasm ×1
soap ×1
web-config ×1
web-services ×1