我在Azure中设置了自己的网络,我所有的数据库服务器,域控制器和代理服务器都是它的端口。
我有一个web应用程序,托管到webrole,这是我的azure网络的一部分,在服务配置中提供以下配置
<NetworkConfiguration>
<Dns>
<DnsServers>
<DnsServer name="mydc" IPAddress="*.*.*.*" />
</DnsServers>
</Dns>
<VirtualNetworkSite name="myNet" />
<AddressAssignments>
<InstanceAddress roleName="mywebrole">
<Subnets>
<Subnet name="myfrentendSubnet" />
</Subnets>
</InstanceAddress>
</AddressAssignments>
我计划通过我的代理服务器发布这个webrole,我需要创建一个没有公共URL的webrole,并且应该能够访问我的网络中的站点。
URL应该类似于http://localhost/mywebrole/index.html
如何配置或发布没有公共URL的webrole ?
您可以通过将端点设置为'InternalEndPoint'来做到这一点。
通过将web角色的端点设置为'internal',它将只能在您的azure云服务内部访问。
另外,如果你试图从不同的web/worker角色访问,你必须将URL http://localhost/mywebrole/index.html中的'localhost'替换为web角色的'IP'地址。
那么ServiceDefinition文件就会有如下内容
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="Endpoint1" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<InternalEndpoint name="Endpoint1" protocol="http" port="80" />
</Endpoints>