# Pow - простой локальный вебсервер

При создании сайта важно иметь рабочий локальный веб-сервер под рукой, чтобы на локальной машине сразу же видеть те изменения, что вносятся и тут же при наличии ошибки их исправлять. И только по завершении работы, результат загружать на рабочий сервер.

[Jekyll][] уже имеет свой локальный сервер, но webrick оказывается довольно медленным, и каждый раз его запускать -- это тратить необоснованно много времени.

[Jekyll]: http://jekyllrb.com/
	"Jekyll"

Как оказалось, есть прекрасная альтернатива в лице [Pow][].

[Pow]:http://pow.cx/
	"Pow: Zero-configuration Rack server for Mac OS X"

Устанавливать и использовать его крайне просто.

```shell
$ curl get.pow.cx | sh
```

И теперь остается только перейти в рабочую директорию программы и создать символическую ссылку на директорию с сайтом.

```shell
$ cd ~/.pow
$ ln -s /path/to/myapp
```

На этом все! Сразу после создания символической ссылки локальный сайт доступен по адресу `http://myapp.dev/`.

Существует gem, который позволяет значительно упростить работу с Pow. Называется он **Powder**.

```shell
$ sudo gem install powder
```

При запуске программы без параметров выдается справка по доступным командам. Среди который и установка/удаление Pow. Все, что может понадобиться в работе с локальным веб-сервером, все команды присутствуют в **Powder**.

```shell
$ powder
Tasks:
  powder always_restart  # Always restart current pow
  powder applog          # Tails in current app
  powder cleanup         # Clean up invalid symbolic link
  powder config          # Shows current pow configuration
  powder default         # Set this app as default
  powder down            # Disable pow
  powder help [TASK]     # Describe available tasks or one specific task
  powder host            # Updates hosts file to map pow domains to 127.0.0.1
  powder install         # Installs pow
  powder link            # Link a pow
  powder list            # List current pows
  powder log             # Tails the Pow log
  powder no_restarts     # Reset this app's restart settings
  powder open            # Open a pow in the browser
  powder remove          # An alias to Unlink (depreciated)
  powder restart         # Restart current pow
  powder status          # Shows current pow status
  powder un_default      # remove current default app
  powder unhost          # Removes pow domains from hostfile
  powder uninstall       # Uninstalls pow
  powder unlink          # Unlink a pow app
  powder up              # Enable pow
  powder version         # Shows the version
```

Таким образом очень просто поднять локальный веб-сервер на своей машине и при этом не потребуется устанавливать apache или nginx, а добавлять новые сайты к нему еще проще. Достаточно только создать символическую ссылку.

В случае, если после обновления ряда программ, Pow перестает откликаться на запросы браузера, достаточно его просто переустановить:

```shell
$ powder uninstall
$ powder install
```

При этом заново создать символически ссылки уже не потребуется.

Более подробную информацию по использованию и настройке Pow можно найти на странице [Pow User's Manual][1].

[1]: http://pow.cx/manual.html
	"Pow User's Manual"

