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/)
10gbiz发布了9月优惠方案,针对VPS、独立服务器、站群服务器、高防服务器等均提供了一系列优惠方面,其中香港/洛杉矶CN2 GIA线路VPS主机4折优惠继续,优惠后最低每月仅2.36美元起;日本/香港独立服务器提供特价款首月1.5折27.43美元起;站群/G口服务器首月半价,高防服务器永久8.5折等。这是一家成立于2020年的主机商,提供包括独立服务器租用和VPS主机等产品,数据中心包括美国洛...
说明一下:gcorelabs的俄罗斯远东机房“伯力”既有“Virtual servers”也有“CLOUD SERVICES”,前者是VPS,后者是云服务器,不是一回事;由于平日大家习惯把VPS和云服务器当做一回事儿,所以这里要特别说明一下。本次测评的是gcorelabs的cloud,也就是云服务器。 官方网站:https://gcorelabs.com 支持:数字加密货币、信用卡、PayPal...
UCloud优刻得商家这几年应该已经被我们不少的个人站长用户认知,且确实在当下阿里云、腾讯云服务商不断的只促销服务于新用户活动,给我们很多老用户折扣的空间不多。于是,我们可以通过拓展选择其他同类服务商享受新人的福利,这里其中之一就选择UCloud商家。UCloud服务商2020年创业板上市的,实际上很早就有认识到,那时候价格高的离谱,谁让他们只服务有钱的企业用户呢。这里希望融入到我们大众消费者,你...
rewritebase为你推荐
快速美白好方法有什么变白的好方法1433端口如何打开SQL1433端口手机区号打电话怎么加区号?ps抠图技巧ps的抠图技巧是什么今日热点怎么删除youku今日热点怎么卸载童之磊湖北中文在线数字出版有限公司怎么样?iphone越狱后怎么恢复苹果越狱后怎么恢复出厂设置qq怎么发邮件qq怎么发文件和邮件mate8价格华为麦特八多少价格安全漏洞如何发现系统安全漏洞
河北服务器租用 二级域名查询 网站备案域名查询 java主机 kddi godaddy续费优惠码 Hello图床 北京主机 网通ip 腾讯云分析 谁的qq空间最好看 idc资讯 135邮箱 微软服务器操作系统 smtp虚拟服务器 数据库空间 湖南idc 卡巴斯基官网下载 移动王卡 学生机 更多