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/)
中午的时候有网友联系提到自己前几天看到Namecheap商家开学季促销活动期间有域名促销活动的,于是就信注册NC账户注册域名的。但是今天登录居然无法登录,这个问题比较困恼是不是商家跑路等问题。Namecheap商家跑路的可能性不大,前几天我还在他们家转移域名的。这里简单的记录我帮助他解决如何重新登录Namecheap商家的问题。1、检查邮件让他检查邮件是不是有官方的邮件提示。比如我们新注册账户是需...
Hosteons,一家海外主机商成立于2018年,在之前还没有介绍和接触这个主机商,今天是有在LEB上看到有官方发送的活动主要是针对LEB的用户提供的洛杉矶、达拉斯和纽约三个机房的方案,最低年付21美元,其特点主要在于可以从1G带宽升级至10G,而且是免费的,是不是很吸引人?本来这次活动是仅仅在LEB留言提交账单ID才可以,这个感觉有点麻烦。不过看到老龚同学有拿到识别优惠码,于是就一并来分享给有需...
DiyVM 香港沙田机房,也是采用的CN2优化线路,目前也有入手且在使用中,我个人感觉如果中文业务需要用到的话虽然日本机房也是CN2,但是线路的稳定性不如香港机房,所以我们在这篇文章中亲测看看香港机房,然后对比之前看到的日本机房。香港机房的配置信息。CPU内存 硬盘带宽IP价格购买地址2核2G50G2M1¥50/月选择方案4核4G60G3M1¥100/月选择方案4核8G70G3M4¥200/月选择...
rewritebase为你推荐
在线漏洞检测网站检测工具,谁有?最新qq空间代码QQ空间代码工信部备案去国家工信部备案需要什么手续呢微信如何建群在微信里怎么创建一个群别人可以加入扫描二维码的加入安卓应用平台app应用平台有哪些 应用平台哪些神雕侠侣礼包大全神雕侠侣手游版四重大礼包怎么得到啊?保护气球如何才能让气球放久了不会没气商标注册查询官网商标注册网的官网是哪个?srv记录SRV记录的定义网站优化方案网站建设及优化的方案
ion 国外空间服务商 512au seovip 本网站服务器在美国 服务器监测 paypal注册教程 服务器硬件防火墙 免费私人服务器 免费外链相册 帽子云排名 美国vpn代理 qq空间打开很慢 服务器操作系统 neobux ddos攻击器下载 主机箱 主机配置 主机响 网易轻博客 更多