Senrulaj retpaĝoj populariĝis dum la pasintaj jaroj, ili estas pli facile gastigi kaj prizorgi. Tiel komencis la populariĝon de senrulaj retpaĝaj generiloj kiel Middleman. Ili aldonis funkciadon kiel helpiloj, enmetado, kaj aŭtomata transformado.

Ĉi tie mi volas diskuti kiel uzi la generilon Middleman (en: peranto), por kaj generi retpaĝon kaj aŭtomate ŝuti ĝin al S3ejo kiel mi diskutis antaŭe

Middleman estas Rubena gemo do post instalado de la gemo vi povas krei projekton.

gem install middleman

middleman init mia_nova_projekto

Tio kreos novan projekton en dosierujo mia_nova_projekto kaj instalos aliajn bezonatajn gemojn. Nun vi povas eniri tiun dosierujon kaj plenumi

bundle exec middleman server

kaj vizitu http://localhost:4567 por vidi la ekzemplan retpaĝon.

S3_sync

Por alŝuti la paĝon en S3an ujon oni povas uzi la s3_sync gemon. Por instali ĝin aldonu

gem 'middleman-s3_sync'

al via Gemfile kaj replenumi bundle install por instali ĝin. Nun vi bezonas agordigi ĝin en la settings.rb dosiero. Jen agorda specimeno:

activate :s3_sync do |s3_sync|
  s3_sync.bucket                     = 'agrablaprogramado.com' # La nomo de la S3 ujo
  s3_sync.region                     = 'us-east-1'     # La regiono de AWS por via ujo.
  s3_sync.aws_access_key_id          = 'AWS ŜLOSILA IDENTIGILO'
  s3_sync.aws_secret_access_key      = 'AWS SEKRETA ŜLOSILO'
  s3_sync.delete                     = false # Ni forviŝu neuzatajn dosierojn.
  s3_sync.after_build                = false # Ni ne havas paŝojn post la konstruado.
  s3_sync.prefer_gzip                = true # Uzu GZIP por densigi la dosierojn
  s3_sync.path_style                 = true
  s3_sync.reduced_redundancy_storage = false # Malpliigi mulopan tenadon
  s3_sync.acl                        = 'public-read' # Permiseblecoj
  s3_sync.encryption                 = false # Ĉifrado
  s3_sync.prefix                     = '' # Antaŭmetaĵo
  s3_sync.version_bucket             = false # Ujo versio
  s3_sync.index_document             = 'index.html' # Indeksa dokumento
  s3_sync.error_document             = '404.html' # Erara dokumento
end

La gravaj agordoj estas bucket, aws_access_key_id kaj aws_secret_access_key. Eblas aŭtomate preni ilin el la medio per la variaĵoj AWS_BUCKET, AWS_ACCESS_KEY_ID kaj AWS_SECRET_ACCESS_KEY.

Kiam vi redaktis la retpaĝon kaj certigis ĝin uzante bundle exec middleman server, vi povas generi la celajn dosierojn per bundle exec middleman build kaj por alŝuti ilin al la S3a ujo per bundle exec middleman s3_sync. Se vi faris la paŝojn tie, vi nun povas iri al via retnomo kaj vidi la paĝon.

Por ĝisdatigi la retpaĝon vi nur bezonas redakti la fontkodon, build denove kaj s3_sync por alŝuti la dosierojn kaj la retpaĝo ĝisdatiĝos.

Por pli de informo pri s3_sync en la angla vizitu sian retpaĝon kaj por lerni pli pri Middleman sian retpaĝon.