do not allow setting www as CNAME record if domain has automatic www-Alias enabled, fixes #895
Signed-off-by: Michael Kaufmann <d00p@froxlor.org>
This commit is contained in:
@@ -170,6 +170,10 @@ class DomainZones extends \Froxlor\Api\ApiCommand implements \Froxlor\Api\Resour
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// check www-alias setting
|
||||||
|
if ($result['wwwserveralias'] == '1' && $result['iswildcarddomain'] == '0' && $record == 'www') {
|
||||||
|
$errors[] = $this->lng['error']['no_wwwcnamae_ifwwwalias'];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// append trailing dot (again)
|
// append trailing dot (again)
|
||||||
$content .= '.';
|
$content .= '.';
|
||||||
|
|||||||
@@ -2099,3 +2099,4 @@ $lng['serversettings']['phpfpm_settings']['custom_config']['description'] = 'Add
|
|||||||
$lng['serversettings']['awstats']['logformat']['title'] = 'LogFormat setting';
|
$lng['serversettings']['awstats']['logformat']['title'] = 'LogFormat setting';
|
||||||
$lng['serversettings']['awstats']['logformat']['description'] = 'If you use customized logformat for your webserver, you need change the awstats LogFormat too.<br/>Default is 1. For more information check documentation <a target="_blank" href="https://awstats.sourceforge.io/docs/awstats_config.html#LogFormat">here</a>.';
|
$lng['serversettings']['awstats']['logformat']['description'] = 'If you use customized logformat for your webserver, you need change the awstats LogFormat too.<br/>Default is 1. For more information check documentation <a target="_blank" href="https://awstats.sourceforge.io/docs/awstats_config.html#LogFormat">here</a>.';
|
||||||
$lng['error']['cannotdeletesuperadmin'] = 'The first admin cannot be deleted.';
|
$lng['error']['cannotdeletesuperadmin'] = 'The first admin cannot be deleted.';
|
||||||
|
$lng['error']['no_wwwcnamae_ifwwwalias'] = 'Cannot set CNAME record for "www" as domain is set to generate a www-alias. Please change settings to either "No alias" or "Wildcard alias"';
|
||||||
|
|||||||
@@ -1746,3 +1746,4 @@ $lng['serversettings']['phpfpm_settings']['custom_config']['description'] = 'Fü
|
|||||||
$lng['serversettings']['awstats']['logformat']['title'] = 'LogFormat Einstellung';
|
$lng['serversettings']['awstats']['logformat']['title'] = 'LogFormat Einstellung';
|
||||||
$lng['serversettings']['awstats']['logformat']['description'] = 'Wenn ein benutzerdefiniertes LogFormat beim Webserver verwendet wird, muss LogFormat von awstats ebenso angepasst werden.<br/>Standard ist 1. Für weitere Informationen siehe Dokumentation unter <a target="_blank" href="https://awstats.sourceforge.io/docs/awstats_config.html#LogFormat">hier</a>.';
|
$lng['serversettings']['awstats']['logformat']['description'] = 'Wenn ein benutzerdefiniertes LogFormat beim Webserver verwendet wird, muss LogFormat von awstats ebenso angepasst werden.<br/>Standard ist 1. Für weitere Informationen siehe Dokumentation unter <a target="_blank" href="https://awstats.sourceforge.io/docs/awstats_config.html#LogFormat">hier</a>.';
|
||||||
$lng['error']['cannotdeletesuperadmin'] = 'Der erste Administrator kann nicht gelöscht werden.';
|
$lng['error']['cannotdeletesuperadmin'] = 'Der erste Administrator kann nicht gelöscht werden.';
|
||||||
|
$lng['error']['no_wwwcnamae_ifwwwalias'] = 'Es kann kein CNAME Eintrag für "www" angelegt werden, da die Domain einen www-Alias aktiviert hat. Ändere diese Einstellung auf "Kein Alias" oder "Wildcard Alias"';
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ use PHPUnit\Framework\TestCase;
|
|||||||
use Froxlor\Settings;
|
use Froxlor\Settings;
|
||||||
use Froxlor\Api\Commands\Customers;
|
use Froxlor\Api\Commands\Customers;
|
||||||
use Froxlor\Api\Commands\DomainZones;
|
use Froxlor\Api\Commands\DomainZones;
|
||||||
|
use Froxlor\Api\Commands\Domains;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
@@ -719,6 +720,31 @@ class DomainZonesTest extends TestCase
|
|||||||
DomainZones::getLocal($admin_userdata, $data)->add();
|
DomainZones::getLocal($admin_userdata, $data)->add();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @depends testAdminDomainZonesAddCname
|
||||||
|
*/
|
||||||
|
public function testAdminDomainZonesAddCnameInvalidWwwAlias()
|
||||||
|
{
|
||||||
|
global $admin_userdata;
|
||||||
|
|
||||||
|
// set domain to www-alias
|
||||||
|
$data = [
|
||||||
|
'domainname' => 'test2.local',
|
||||||
|
'selectserveralias' => '1'
|
||||||
|
];
|
||||||
|
Domains::getLocal($admin_userdata, $data)->update();
|
||||||
|
|
||||||
|
$data = [
|
||||||
|
'domainname' => 'test2.local',
|
||||||
|
'record' => 'www',
|
||||||
|
'type' => 'CNAME',
|
||||||
|
'content' => 'testing.local'
|
||||||
|
];
|
||||||
|
$this->expectExceptionMessage('Cannot set CNAME record for "www" as domain is set to generate a www-alias. Please change settings to either "No alias" or "Wildcard alias"');
|
||||||
|
DomainZones::getLocal($admin_userdata, $data)->add();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @depends testAdminDomainZonesAddCname
|
* @depends testAdminDomainZonesAddCname
|
||||||
|
|||||||
Reference in New Issue
Block a user