CopyrightIBMCorporation2013ТорговыемаркиСозданиемногоузловойустановкиDrupalСтраница1из11СозданиемногоузловойустановкиDrupalСозданиенесколькихсайтовDrupalсединойбазойкодаиразнымибазамиданныхТимОгунжоби02.
08.
2013ОднаважнаяособенностьсистемыуправленияинформациейDrupalзаключаетсявтом,чтоонапозволяетзапускатьнесколькоWeb-сайтовизоднойбазовойустановкисреды–этафункцияназываетсямногоузловымиустановками(multisiteinstallations).
ТакиеобъектыособеннополезныWeb-администраторам,которымнужнопостоянноуправлятьиподдерживатьнесколькосайтов,иупрощаютадминистрированиенесколькихустановокDrupal,расположенныхнаодномитомжесервере,таккаквсеониработаютпоодномуитомужесценарию.
Вэтойстатьепоказано,какустановить,настроить,запускатьиадминистрироватьмногоузловыеустановкиDrupal.
Существуетмножествопричин,покоторымсистемныйадминистраторилиразработчикможетпредпочестьразмещениенесколькихузловнаодномитомжесервереввидемногоузловойконфигурации.
Например,такаяконфигурация:позволяетсоздатьэффективнуюсредуразработки;обеспечиваетвозможностьсозданияитестированиясайтадоегопубликации;позволяетвыполнятьразноеПОнаодномитомжесайте;допускаетсовместноеиспользованиеоднойитойжебазыкодананесколькихсайтах;упрощаетвиртуальныйхостинг;позволяетисполнятьнаодномитомжесервереаналогичныезащищенные(HTTPповерхSecureSocketsLayer[HTTPS])истандартные(HTTP)сайты;облегчаетадминистрированиесервера.
ОднаконевсеизэтизадачилучшевсегорешатьспомощьюмногоузловойустановкиDrupal.
Вэтойстатьерассматриваетсятолькооднастратегия:какиспользоватьвстроеннуюмногоузловуюподдержкуDrupalдлясозданияиобслуживаниянесколькихсайтовизодногоэкземпляраDrupal.
ОсновныесоображенияИспользованиесистемыуправленияинформацией(ContentManagementSystem-CMS)Drupalдлясозданиямногоузловойконфигурациидаетнесколькопреимуществ,одноdeveloperWorksibm.
com/developerWorks/ru/СозданиемногоузловойустановкиDrupalСтраница2из11изкоторых―предельноеупрощениенастройкииподдержки.
Другоепреимуществозаключаетсявтом,чтодублированиеданныхсводитсякминимуму,посколькуDrupalустанавливаетсятольководномместенасервере.
Наконец,вDrupalестьмножествовспомогательныхмодулей,которыеможноиспользоватьдляупрощенияуправлениянесколькимисайтами,применяярасширенныевозможностиковсемсайтамустановкиодновременно.
Сочетаниедополнительныхфункцийсупрощеннымадминистрированием―благодлявсех,комуприходитсянастраиватьиадминистрироватьмногоузловыеустановки.
Темнеменее,утакойконфигурацииестьнескольконедостатков,дваизкоторыхзаслуживаютособогоупоминания:безопасностьиобобщение.
Сайтымногоузловойустановкиразделяютодинитотжекоди,следовательно,одниитежефайлы.
Врезультателюбой,ктополучаетдоступкфайловойсистемесерверадляодногосайта,можетобращатьсяковсемфайлам,используемымвсемисайтамиэтоймногоузловойустановки.
Такимобразом,втехслучаях,когдаврамкахустановкиразныелюдиуправляютразнымисайтами,онаможетбытьневполнебезопасной.
Еслибезопасностьмеждусайтами―важнаяпроблема,илиеслиразнымисайтамиуправляютразныелюди,товстроеннаявDrupalфункциональностьмногоузловойподдержкиможетоказатьсянелучшимрешением.
ВместоэтогорассмотритевозможностьвыделениядлякаждогосайтасвоегособственногоэкземпляраDrupal.
Преимуществаупрощенногоадминистрирования,обеспечиваемыемногоузловойконфигурациейтеряются,затовашисайтыбудутлучшезащищеныотзлоупотреблений.
Втораяпроблема—обобщение—связанасдоступомкбазеданных.
МногоузловыеустановкиDrupalразделяютодинитотжеисходныйкод,нонеоднуитужебазуданных.
Такчтоузлы,пользователиикомментариинаодномсайтепоумолчаниюнедоступнысдругихсайтов.
Этоможнорассматриватьикакблаго,новтехситуациях,когдаадминистраторуможетпотребоваться,чтобывсесайтыразделялиоднуитужеинформацию,этоможетоказатьсяпрепятствиемприпроектированиимногоузловойустановкиDrupal.
Темнеменее,яркимпятномвстроенноймногоузловойподдержкиDrupalявляетсято,чтомодули,темыидажевнекоторойстепенизагруженныефайлыможносделатьобщимидлявсехсайтов.
Крометого,одинаковыеилиспециальныефайлыможносохранятьвразныхпапках,соответствующихразнымсайтамконфигурации.
Есливажно,чтобывсяинформациябылаобщей,рекомендуетсяиспользоватьфункциюмногодоменной(multidomain)поддержки,котораялегкообеспечиваетсямодулемстакимжеименем.
УстановкамногоузловойконфигурацииDrupalПослезагрузкиархиваDrupal(см.
разделРесурсы)распакуйтефайлископируйтеполученнуюпапкувкорневойкаталогдокументовсвоегоWeb-сервера.
ЭтонетрудносделатьспомощьюподходящегоFTP-клиента;априналичиидоступаSecureShell(SSH)ксерверузадачаупрощаетсяещебольше.
Достаточновыполнитькомандуwget,чтобызагрузитьфайлархиваизхранилищаираспаковатьего,получивпапкуустановкиDrupal.
(Длялокальнойсредыразработкивозможныдополнительныеварианты:см.
ниже.
)Назовитепапкуустановки/goodsite.
ibm.
com/developerWorks/ru/developerWorksСозданиемногоузловойустановкиDrupalСтраница3из11Дляэтогопримерамысоздадимтриразныхсайта;такимобразом,потребуютсятриразныхбазыданных—пооднойдлякаждогосайта.
ЭтазадачалегкорешаетсяспомощьюфункцииphpMyadminпанелиCpanelсервера.
Затемустановитесреду.
ОднакопередиспользованиемWeb-браузерадлязапускапрограммыустановкинужнорешитьдвезадачи:предоставитьDrupalнеобходимуюинформациюосайтах,которыевысобираетесьзапускать;передатьданныеоконфигурациисайтовизDrupalвовсесайты.
Длярешенияпервойзадачисоздадимспециальныйкаталогдлякаждогосайта.
Затемпоместимвкаждыйкаталогфайлпараметров.
Цельзаключаетсявтом,чтобысоздатьоднуосновнуюустановкусдвумяподузлами.
Каждыйподузелразделяетобщиефайлысосновнымузлом,ноимеетсвойсобственныйURL-адресиотдельнуюбазуданных.
ВотURL-адресасоздаваемыхсайтов:основнойсайт:http://goodsite.
com;подузел1:http://bettersite.
com;подузел2:http://bestsite.
com.
УстановкапервогоузлаПослеразмещенияисходногокодаDrupalвкорневомкаталогедокументовисозданиябазданныхMySQLприступаемкустановкепервогосайтаиглавногодомена.
ГлавныйдоменИменемглавногодоменабудетURL-адрес,черезкоторыйдоступеносновнойсайт(вэтойстатье:http://goodsite.
com).
Основнаязадачаглавногодомена―размещениебазовойустановкиDrupal.
Независимооттого,используетсялиэтотдоменвкачествеодногоизвашихсайтов,вслучаеотказалюбыхдочернихузловихURL-адресабудутпоумолчаниюприсвоеныглавномудомену;такимобразом,полезно,чтобыэтотсайтсодержалинформацию,относящуюсякдочернимсайтам,такуюкакконтактныеданные.
Какужеупоминалось,длякаждогоподузлавосновнойпапкеDrupalнужносоздатьподпапку.
То,чтомногиесчитаютсамойсложнойзадачейвмногоузловойустановкеDrupal,насамомделерешаетсяоченьпросто:укажитеDrupal,какиесайтывыхотитеразместить,ипростосоздайтедляэтихсайтоввложенныепапкивпапке/sites.
ГлавнаякорневаяпапкаDrupal―этокаталогсименем/sites.
Те,ктоужеадминистрировалDrupal,знает,чтовесьнекорневойкоддолженнаходитьсявэтойпапке.
ВустановкеDrupalпоумолчаниюпапка/sitesсодержитдвакаталога.
Впервом,all/,размещаютсязагруженныетемыимодули.
Каталогall/―этохранилищеинформации,общейдлявсехсайтов.
Втораяпапка,default/,содержитфайлыконфигурации,атакженеосновныеиспециальныетемыимодули.
Обычно,еслинеуказаноиное,Drupalищетсведенияоконфигурациисайтавкаталогеdefault/.
Заметим,однако,чтоэтопредположениедляобычного,одноузловогосайта—длямногоузловойустановкиономожетнесоблюдаться.
developerWorksibm.
com/developerWorks/ru/СозданиемногоузловойустановкиDrupalСтраница4из11СозданиеподпапокифайловВажнойподсказкойдляпостроениямногоузловойконфигурацииDrupalслужитто,чтопомимопапокall/иdefault/можносоздаватьдругиеподпапки/sites,иDrupalприсвоитимособоезначение.
Конкретнее,Drupalпредполагает,чтовседругиекаталоги,расположенныевпапке/sites,представляютсобойимяхостаилишаблонименихоста.
Высоздаетевложеннуюпапкувшаблоне/goodsite/sites/впапке/sitesдлявсехподсайтов,подставляявместоименикаждойпапкиподсайтасвойпредполагаемыйURL.
Дочерниесайтыдляэтогопримерапоказанынарисунке1.
Sub-site1:/goodsite/sites/bettersiteSub-site2:/goodsite/sites/bestsiteРисунок1.
Иерархияпапок/sitesДлякаждогодочернегоузлавыполнитеследующиедействия:1.
Скопируйтефайлdefault.
settings.
phpизкаталогаsites/defaultвкаждыйподкаталогипереименуйтееговsettings.
php.
2.
СпомощьюкомандыCHMODустановитекоддопускаsettings.
phpравным644,еслиэтонетекущеезначениекодадопуска.
3.
ДляустановкиDrupalверсии6создайтепапкусименемfilesдлякаждогосайтаиспомощьюCHMODизменитекоддопускана755.
Этопапка,вкоторуюDrupalможетзаписыватьинформацию—какправило,загруженыфайлы,эскизыизображений,агрегированныекаскадныетаблицыстилей(CSS)ифайлыJavaScript.
Этифайлыхранятсяневбазеданных,а,скорее,вфайловойсистеме,такчтонужноиметькаталог,вкоторомонимогутразмещаться.
ПоумолчаниюDrupalпросматриваетподкаталогсименемfiles/вкаталогекаждогосайта.
ВустановкеDrupalпоумолчаниюэтопапкаsites/default/files/.
4.
Длякаждогоподсайтасоздайтепапкуmodules.
Этопапка,вкоторойнаходятсявсемодули,специфическиедляэтогоподсайта.
Любыемодули,которыебудутиспользоватьсявсемисайтами,должнынаходитьсявпапкеsites/all/modules.
ibm.
com/developerWorks/ru/developerWorksСозданиемногоузловойустановкиDrupalСтраница5из115.
Длякаждогоподсайтасоздайтепапкуthemes.
Здесьразмещаютсятемы,уникальныедляданногоподсайта.
Любыетемы,которыебудутиспользоватьвсесайты,должныразмещатьсявпапкеsites/all/themes.
ТеперьукажитеURL-адресадочернихсайтовнаWeb-сервере,еслиониненаходятсявведенииоднойитойжехостинговойкомпании.
Еслидляразныхсайтовиспользуютсяразныехосты,нужноизменитьинформациюсистемыдоменныхимен(DNS―какэтосделать,подскажутрегистраторыихостинговыекомпании).
Послеэтогонужноприпарковатьэтотдоменповерхсвоегоосновногодомена—вданномслучае,goodsite.
com.
Теперьувасестьнесколькоальтернатив,наиболеетруднаяизкоторыхпредполагаетиспользованиетакназываемойсимволическойссылки(symlink).
Однакопарковканамногопроще;такчтовыберитевCpanelпунктParkedDomains.
Добавьтеbettersite.
comиbestsite.
comвполеNewDomainName(Новоедоменноеимя),затемнажмитекнопку(Добавитьдомен).
СозданиемультисайтовЕстьнесколькоспособовдвигатьсядальше,ноопятьже,мывыберемсамыйпростой:непосредственнуюзагрузкувкаждыйдочернийузелбазыданныхстаблицами,созданнымивпроцессеустановкиглавногосайта.
Дляэтогонеобходимосоздатьдамптаблицыбазыданныхизустановкиглавногосайтаисохранитьеголокально.
Затем―либозагрузитьэтотфайлспомощьюphpMyadmin,либооткрытьеговредакторе.
Чтобыиспользоватьвторойвариант,выполнитевphpMyadminследующиедействия:1.
Перейдитевбазуданных,созданнуюдляподсайта.
2.
ПерейдитевSQLивставьтетудавеськодиздампаструктурированногоязыказапросов(SQL).
3.
НажмитекнопкуGo.
Этапроцедуравоспроизводиттаблицыбазыданныхглавногосайтавбазеданныхподсайта.
Далее,длякаждогодочернегоузлаоткройтефайлsettings.
phpинайдитеследующуюстроку:$db_url='mysql://username:password@localhost/databasename';Изменитеэтустрокуподключениякбазеданныхсучетомпараметровбазыданныхподсайта(имяпользователя,пароль,имяхоста,имябазыданных).
Теперь,еслизайтинаbettersite.
com,выдолжныполучитьстандартнуюстраницу"WelcometoyournewDrupalwebsite"(ДобропожаловатьнавашновыйсайтDrupal),какпоказанонарисунке2.
Повторитеэтидействиядлявсехдополнительныхсайтов.
developerWorksibm.
com/developerWorks/ru/СозданиемногоузловойустановкиDrupalСтраница6из11Рисунок2.
ВашновыйWeb-сайтвDrupalСозданиемультисайтовизсубдоменовЕстьещеодинспособбыстрогосозданиямультисайтовсихпредварительнымописаниемвкачествеподдоменоввCpanel.
Приэтомметоде,однако,необходимосначаласоздатьпапкидлякаждогосайтавкаталоге/goodsite/sites,нонаэтотраз―сиспользованиемследующегосоглашения(см.
Рисунок3):Sub-site1:/www/goodsite/sites/bettersite.
com;Sub-site2:/www/goodsite/sites/bestsite.
comРисунок3.
СозданиемультисайтовизсубдоменовОбратитевнимание,чтовпапкисубдоменовдолжныиметьтежеимена,чтоисамисубдомены.
Какипрежде,поместитевкаждуюпапкусубдоменакопиюфайлаdefault.
settings.
php,изменитеимяфайланаsettings.
phpиподайтекомандуCHMOD,чтобыизменитькоддопускана644.
ТеперьвозвратитесьвCpanelисоздайтедваподдомена:ibm.
com/developerWorks/ru/developerWorksСозданиемногоузловойустановкиDrupalСтраница7из11bettersite.
goodsite.
combestsite.
goodsite.
comСозданиесимволическойссылкиСимволическаяссылка(symlink)—этофайл,содержащийссылкунадругойфайлилипапкуввидеабсолютногоилиотносительногопути,которыйспособствуетразрешениюименпути.
Спомощьюлюбогоредакторакодасоздайтефайлsymlink.
phpидобавьтекод,аналогичныйследующему:Вданномслучаефайлбудетвыглядетьпримернотак:ПоместитеэтусимволическуюссылкувосновнойкаталогглавногосайтаизапуститеееизURL-адресаhttp://goodsite.
com/symlink.
php.
Еслисинтаксискодаправильный,выдолжныувидетьпустуюстраницу;впротивномслучаебудетвыведеносообщениеобошибке.
Настройтекодэтогофайлатак,чтобыонработалправильно.
Настройка.
htaccessТеперьоткройтефайл.
htaccessвлюбомредакторекода.
Найдитеследующуюстроку:#RewriteBase/Удалитезнак"решетка"(#)идобавьтеследующуюстроку,азатемсохранитеизменения:RedirectMatch301^/sub-domain/(.
*)$http://sub-domain.
yoursite.
com$1Воткакврезультатедолженвыглядетьфайл.
htaccess:RewriteBase/RedirectMatch301^/bettersite/(.
*)$http://bettersite.
goodsite.
com/$1RedirectMatch301^/bestsite/(.
*)$http://bestsite.
goodsite.
com/$1Этапереадресацияпозволяетперенаправитьhttp://goodsite.
com/bettersiteиhttp://bettersite.
goodsite.
comнаодинитотжесайт.
Есливсесделаноправильно,топриобращениипоURL-адресамподсайтовhttp://bettersite.
goodsite.
comиhttp://bestsite.
goodsite.
comвыбудетепереадресовыватьсянастраницуустановки.
Когдавсесайтыустановлены,ссайтомhttp://bettersite.
goodsite.
comлегкосвязатьсяизCpanelспомощьюпереадресациипоURL-адресуhttp://bettersite.
com.
developerWorksibm.
com/developerWorks/ru/СозданиемногоузловойустановкиDrupalСтраница8из11МультисайтналокальномхостеUbuntuВыполнитьмногоузловуюустановкунаUbuntuнемногосложнее,чемто,чтомыужепроделалидляудаленногохостинга.
Такуюмногоузловуюустановкулегконастроитьспомощьюметода,описанноговследующихразделах.
СозданиеновойпапкихостовСначаланеобходимосоздатьпапкуgoodsiteвсвоейдомашнейпапке,используяследующийкод:>>filesystem/home//Результатдолженвыглядетьтак:->/home//goodsite.
ТеперьскопируйтевэтупапкувсесвоифайлыDrupal.
РедактированиефайлаhostsОтредактируйтефайлhosts,открывокнотерминаласпомощьюследующейкоманды:sudogedit/etc/hosts'Затемможнодобавитьлюбоеимясайтавформате127.
0.
0.
1mysite.
com.
Дляданногопримерадобавьтеследующиестроки:127.
0.
0.
1goodsite.
com127.
0.
0.
1bettersite.
com127.
0.
0.
1bestsite.
comРедактированиеимеющихсясайтовТеперьперейдитевпапкуимеющихсясайтовисоздайтефайлназваниемgoodsite.
comспомощьюследующихкоманд:cd/etc/apache2/sites-availablesudocpdefaultgoodsite.
comsudogeditgoodsite.
comПерваякомандавыполняетпереходвпапкудоступныхсайтов;втораякопируетфайлпоумолчаниюипереименовываетеговgoodsite.
com.
Третьякомандаоткрываетфайлgoodsite.
comдляредактирования.
Добавьтевфайлкод,приведенныйвлистинге1.
Листинг1.
ДобавлениеновогосайтавпапкусуществующихсайтовServerAdminwebmaster@localhostServerNamegoodsite.
comDocumentRoot/home//goodsiteOptionsFollowSymLinksAllowOverrideAllibm.
com/developerWorks/ru/developerWorksСозданиемногоузловойустановкиDrupalСтраница9из11Сохранитеgoodsite.
com,включитеегоиперезагрузитеApacheспомощьюследующихкоманд:sudoa2ensitemysite.
comsudo/etc/init.
d/apache2reloadСозданиепапокдочернихсайтовСоздайтесвойподсайтвпапке/sitesfolder/home/[вашлогинubuntu]/goodsite/sites/bettersite.
com,азатемдобавьтевновуюпапкуфайлsettings.
php.
Есливыужеперешливsites/directory,скопируйтефайлsettings.
phpспомощьюследующейкоманды:$cpdefault/default.
settings.
phpbettersite.
com/settings.
php$chmod777bettersite.
com/settings.
phpЗапускустановкиподсайтаОткройтебраузеринаберите:http://bettersite.
com.
Выдолжныувидетьстраницунастройкиустановки.
Вновьсделайтефайлsettings.
phpдоступнымтолькодлячтениявоизбежаниесообщенийбезопасности,затемвыполнитеустановкуподсайта.
Далее,создайтепапкусайтаивыполнитеустановкуbestsite.
com,атакжелюбыхдругихподсайтов,указанныхвконфигурациихостов.
МногоузловыемодулиМодулииспользуютсядлярасширенияфункциональностибазовойустановкиDrupalимогутбытьразныхкатегорий,отадминистративныхдофункциональных,фактическиповышающихпроизводительность.
Несколькомодулеймогутпомочьвсозданиимультисайтовилианалогичныхконфигураций.
Подробнаяинформацияотом,какиспользоватьэтимодули,содержитсявдокументациипоустановкекаждогомодуля.
МодулиDomainAccessМодулиDomainAccess(см.
разделРесурсы)позволяютсоздатьмультисайт,используяединуюбазукода,общуюбазуданныхпользователейиобщийвход,норазныеинформационныебазыданных.
Такаяконфигурацияотличаетсяоттого,чтомысделаливэтойстатье.
DomainAccess―этонасамомделенабормодулей,которыеоблегчаютуправлениегруппойсайтовсиспользованиемединогобазовогокодаDrupal,установленноговнутриединойобщейбазыданных.
Этимодулипозволяютвсемсайтамразделятьпользователей,контентипараметры,еслиониуженастроенынатакуюработу.
Чтобыопределить,какаяинформациядолжнаотображатьсянакаждомсайтевмногоузловойсреде,модулиDomainAccessиспользуютсистемуDrupalNodeAccessSystem.
Вотличиеотдругихмногодоменныхмодулей,этимодулитакжеконтролируютдоступпользователейнаосновеактивногодомена,которыйпросматриваетпользователь,аненаосновегруппыилисайта,ккоторымэтотпользовательпринадлежит.
developerWorksibm.
com/developerWorks/ru/СозданиемногоузловойустановкиDrupalСтраница10из11МодульMultisiteManagerMultisiteManager(см.
разделРесурсы)—этовспомогательныймодуль,которыйпозволяетсоздаватьновыесайтыDrupalизбазовогосайта-безнеобходимостиобращатьсякбазеданныхустановки.
Поумолчаниюновыйсайтустанавливаетсявтойжебазеданных,чтоиосновнаяустановка,носдругимпрефиксом.
Впротивномслучае,еслиутекущегопользователяестьправанасозданиебазыданных,установкуможновыполнитьвэтойбазеданных.
ЗаключениеЭтастатьяучитсозданиюмногоузловойконфигурацииспомощьюDrupalвкачествебазовойCMS.
Мыустановилиглавныйсайтивегоструктурекаталоговрасположилиподсайты.
Читательузнал,каквыполнятьмногоузловыеустановкинаудаленномсервереспомощьюсредствадминистрирования,предоставляемыххостинговойкомпанией.
Онтакжеузнал,каксоздатьмногоузловуюустановкуналокальномкомпьютере—вчастности,накомпьютереподуправлениемUbuntuLinux.
ЭтастатьятакжезнакомитчитателясдвумямодулямиDrupal,которыепомогаютсоздаватьмногоузловыеимногодоменныеконфигурации.
ibm.
com/developerWorks/ru/developerWorksСозданиемногоузловойустановкиDrupalСтраница11из11ПохожиетемыОригиналстатьи:CreatingaDrupalmultisiteinstallation.
ЗагрузитепоследнююверсиюDrupal.
ПодробнееомодуляхDomainAccess.
ПодробнееомодулеMultisiteManager.
ОзнакомительныеверсиипродуктовIBM:загрузитеознакомительныеверсиипродуктовIBMилипоработайтеснимив"песочнице"IBMSOASandboxипопрактикуйтесьсинструментамиразработкиприложенийипродуктамипромежуточногоуровнядляDB2,Lotus,Rational,TivoliиWebSphere.
CopyrightIBMCorporation2013(www.
ibm.
com/legal/copytrade.
shtml)Торговыемарки(www.
ibm.
com/developerworks/ru/ibm/trademarks/)
官方网站:点击访问亚洲云官网618活动方案:618特价活动(6.18-6.30)全站首月活动月底结束!地区:浙江高防BGPCPU:至强铂金8270主频7 默频3.61 睿频4.0核心:8核(最高支持64核)内存:8G(最高支持128G)DDR4 3200硬盘:40G系统盘+80G数据盘带宽:上行:20Mbps/下行:1000Mbps防御:100G(可加至300G)防火墙:提供自助 天机盾+金盾 管...
全球独立服务器、站群多IP服务器、VPS(哪个国家都有),香港、美国、日本、韩国、新加坡、越南、泰国、加拿大、英国、德国、法国等等99元起步,湘南科技郴州市湘南科技有限公司官方网址:www.xiangnankeji.cn产品内容:全球独立服务器、站群多IP服务器、VPS(哪个国家都有),香港、美国、日本、韩国、新加坡、越南、泰国、加拿大、英国、德国、法国等等99元起步,湘南科技VPS价格表:独立服...
atcloud怎么样?atcloud刚刚发布了最新的8折优惠码,该商家主要提供常规cloud(VPS)和storage(大硬盘存储)系列VPS,其数据中心分布在美国(俄勒冈、弗吉尼亚)、加拿大、英国、法国、德国、新加坡,所有VPS默认提供480Gbps的超高DDoS防御。Atcloud高防VPS。atcloud.net,2020年成立,主要提供基于KVM虚拟架构的VPS、只能DNS解析、域名、SS...
rewritebase为你推荐
ip地址是什么Ip地址格式是什么?yy频道中心yy频道怎么进频道中心,求图~!如何免费开通黄钻怎样才能免费开通黄钻博客外链请问怎么利用博客做外链呢雅虎社区有什么网站的论坛内容丰富 资讯较新 适合年轻人的?arm开发板ARM开发板和树莓派有什么区别天天酷跑刷金币天天酷跑如何刷分刷金币?lockdowndios8.1能用gpp3to2吗?型号A1429云挂机云挂机每天2+元你提了吗?电子商务网站模板电子商务网站策划书
过期域名 dreamhost vmsnap3 typecho 警告本网站美国保护 域名转向 国外代理服务器软件 美国免费空间 根服务器 智能dns解析 杭州电信宽带优惠 阿里云手机官网 学生服务器 阿里云邮箱登陆 国外网页代理 so域名 easypanel 火山互联 qq部落18-3 宿主机 更多