2012-08-08 1 views
4

Я работаю над веб-приложением SaaS (Software as a Service), и я использую субдомены для отдельных учетных записей.Какие поддомены SaaS блокировать

Какие субдомены я должен помешать пользователю использовать.

У меня в настоящее время есть ... администратор, администратор, блог, поддержка и помощь. Я помню, что видел вопрос о Кворе, но я больше не могу его найти.

ответ

3

Спасибо за ваши предложения. Я сделал Rubygem для блокировки нагрузки подобластей, которые можно найти здесь - https://github.com/deanperry/saas_deny_subdomains

Просто добавьте deny_subdomains :subdomain (: субдомен) является полем, и он будет блокировать/запретить массовый список поддоменов.

2

Назвать вид:

  • WWW
  • помощь
  • поддержка
  • админ
  • апи
  • assets0-х
2

В дополнение к указанным:

  • тест
  • этап/постановка
  • Dev/развитие
  • статус
  • почта
  • WebMail
  • FTP
  • каналы
  • SSL/безопасный
  • д Эмо
  • мерзавец/СВН
  • файлы/документы

также может заказать свое собственное имя и любые изменения.

Редактировать: Просто мысль и, возможно, сверху, но вы также можете рассмотреть вопрос о резервировании чего-то вроде i.example.com («i» для внутреннего), тогда у вас есть полное пространство имен *. i.example.com для внутреннего использования.

2

Вот моя версия на PHP. Я добавил некоторые из моих +, предложенных в потоке + декан Перри. Я смог покрыть множество сценариев, используя некоторое регулярное выражение.

/** 
* Checks if the subdomain is good. e.g. forbidden names are: ssl, secure, test, tester etc. 
* @see http://stackoverflow.com/questions/11868191/which-saas-subdomains-to-block 
* @see https://github.com/deanperry/saas_deny_subdomains/blob/master/lib/saas_deny_subdomains/subdomains.rb 
* @return boolean 
*/ 
public function isSubdomainAvailable($subdomain) { 
    $banned_subdomains_csv = 'admin, login, administrator, blog, dashboard, admindashboard, images?, img, files?, videos?, help, support, cname, test, cache, mystore, biz, investors? 
    api\d*, js, static, s\d*,ftp, e?mail,webmail, webdisk, ns\d*, register, join, registration, pop\d?, beta\d*, stage, deploy, deployment,staging, testers?, https?, donate, payments, smtp, 
    ad, admanager, ads, adsense, adwords?, about, abuse, affiliate, affiliates, store, shop, clients?, code, community, forum?, discussions?, order, buy, cpanel, store, payment, 
    whm, dev, devel, developers?, development, docs?, whois, signup, gettingstarted, home, invoice, invoices, ios, ipad, iphone, logs?, my, status, networks?, 
    new, newsite, news, partner, partners, partnerpage, popular, wiki, redirect, random, public, resolver, sandbox, search, servers?, service,uploads?, validation, 
    signin, signup, sitemap, sitenews, sites, sms, sorry, ssl, staging,features, stats?, statistics?, graphs?, surveys?, talk, trac, git, svn, translate, validations, webmaster, 
    www\d*, feeds?, rss, asset[s\d]*, cp\d*, control panel, online, media, jobs?, secure, demo, i\d*, img\d*, css\d*, js\d*'; 

    $regex = $banned_subdomains_csv; 
    $regex = preg_replace('#\s#si', '', $regex); // rm new lines, spaces etc 
    $regex = preg_replace("#,+#si", '|', $regex); // more than one comma 
    $regex = trim($regex, ','); // remove any leading/trailing commas 
    $regex = '#^(?:' . $regex . ')$#si'; // let's create a nice regex. 

    $status = !preg_match($regex, $subdomain); // without main domain added 

    return $status; 
} 

Слави

http://orbisius.com

+1

Выглядит хорошо, спасибо –

 Смежные вопросы

  • Нет связанных вопросов^_^