Fixed: Web Sites: Add IP Address to binding when using dedicated ip addresses
This commit is contained in:
parent
b04e862a86
commit
fe89ed6609
2 changed files with 31 additions and 4 deletions
|
@ -223,7 +223,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
StringDictionary webSettings = ServerController.GetServiceSettings(serviceId);
|
||||
int addressId = Utils.ParseInt(webSettings["SharedIP"], 0);
|
||||
|
||||
|
||||
bool dedicatedIp = false;
|
||||
if (packageAddressId != 0)
|
||||
{
|
||||
// dedicated IP
|
||||
|
@ -231,6 +231,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
if (packageIp != null)
|
||||
{
|
||||
addressId = packageIp.AddressID;
|
||||
dedicatedIp = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -258,6 +259,12 @@ namespace WebsitePanel.EnterpriseServer
|
|||
return BusinessErrorCodes.ERROR_WEB_SITE_ALREADY_EXISTS;
|
||||
}
|
||||
|
||||
if (dedicatedIp)
|
||||
{
|
||||
// DEDICATED IP
|
||||
bindings.Add(new ServerBinding(ipAddr, "80", ""));
|
||||
}
|
||||
|
||||
UserInfo user = PackageController.GetPackageOwner(packageId);
|
||||
UserSettings webPolicy = UserController.GetUserSettings(user.UserId, UserSettings.WEB_POLICY);
|
||||
|
||||
|
@ -628,7 +635,6 @@ namespace WebsitePanel.EnterpriseServer
|
|||
if (addressId != 0)
|
||||
ServerController.AddItemIPAddress(siteItemId, addressId);
|
||||
|
||||
|
||||
DomainInfo ZoneInfo = ServerController.GetDomain(domain.ZoneName);
|
||||
|
||||
AddWebSitePointer(siteItemId,
|
||||
|
@ -644,6 +650,27 @@ namespace WebsitePanel.EnterpriseServer
|
|||
, ZoneInfo.DomainId, true, true, true);
|
||||
}
|
||||
|
||||
|
||||
WebServer web = new WebServer();
|
||||
ServiceProviderProxy.Init(web, siteItem.ServiceId);
|
||||
WebSite site = web.GetSite(siteItem.SiteId);
|
||||
|
||||
List<ServerBinding> newBindings = new List<ServerBinding>();
|
||||
foreach (ServerBinding b in site.Bindings)
|
||||
{
|
||||
newBindings.Add(b);
|
||||
}
|
||||
|
||||
// load web site IP address
|
||||
IPAddressInfo ip = ServerController.GetIPAddress(siteItem.SiteIPAddressId);
|
||||
string ipAddr = "*";
|
||||
if (ip != null)
|
||||
ipAddr = !String.IsNullOrEmpty(ip.InternalIP) ? ip.InternalIP : ip.ExternalIP;
|
||||
|
||||
newBindings.Add(new ServerBinding(ipAddr, "80", ""));
|
||||
|
||||
web.UpdateSiteBindings(siteItem.SiteId, newBindings.ToArray(), false);
|
||||
|
||||
return 0;
|
||||
}
|
||||
catch (Exception ex)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue