Главная > Coding > Используем Automator для добавления vhost в Apache

Используем Automator для добавления vhost в Apache

4 Октябрь 2009 Михаил

automatorДля удобства и скорости работы естественно заботиться об автоматизации многих примитивных вещей, таких как например добавить виртуальный хост для нового проекта. new balance running shaly.fr Я уже писал подобный скрипт добавления хостов в Apache для Ubuntu. air jordan spizike Chaussures Asics Pas Cher Но т.к., я недавно стал обладателем MacBook Pro c Snow Leopard, то подобная задача встала и здесь. Matt Holliday Jersey В Snow Leopard у меня уже был установлен Apache, со всеми стандартными модулями к нему, а так же PHP и MySQL. cheap ugg boots uk Mochilas Kanken Infantil Если у кого их нет, то нет проблем их поставить т.к. nike flyknit Yeezy Boost 750 в сети полно статей про их установку на Мак ОС. ugg classic mini cheap Изучая Mac OS, наткнулся на Automator, который позволяет писать приложения и службы или какие-то действия (макросы). adidas yeezy boost new balance homme 574 pas cher Задача: создать скрипт, который на основании запрошенного доменного имени сайта создает директорию сайта в папке ~/Sites/, добавит VirtualHost в конфиг Apache и запись домена в /etc/hosts. ugg men Nike Air Max 1 Heren groen Поехали: 1. nike air huarache pas cher bestellen schoenen nike air max 2016 goedkoop Запускаем автоматор, в шаблонах выбираем «приложение» Создаем приложение в Automator (Mac OS) 2. nike air max classic bw Adidas Stan Smith Heren Создаем переменные site и sitepath, создаем следующий набор последовательных действий как на изображениях ниже Диалоговые окна и действия с папками в Automator 3. new balance 420 nike air max pas cher Добавляем объект AppleScript AppleScript в Automator со следующим содержимым: on run {input, parameters} (* Your script goes here *) set sitepath to (POSIX path of (item 1 of input as string)) set site to item 2 of input do shell script "mkdir \"" & sitepath & "www\"" do shell script "mkdir \"" & sitepath & "log\"" do shell script "echo \"\" > " & sitepath & "www/index.php" set vHost to "exec 3>&1 1>>\"/etc/apache2/extra/httpd-vhosts.conf\" echo \"<VirtualHost *:80>\" echo \" DocumentRoot \\\"" & sitepath & "www\\\"\" echo \" ServerName " & site & "\" echo \" ErrorLog \\\"" & sitepath & "log/error_log\\\"\" echo \" CustomLog \\\"" & sitepath & "log/access_log\\\" common\" echo \"</VirtualHost>\" exec 1>&3" set vHostAdd to "sudo echo \" 127.0.0.1 " & site & "\" >> \"/etc/hosts\"" do shell script vHost with administrator privileges do shell script vHostAdd with administrator privileges do shell script "/usr/sbin/apachectl restart" with administrator privileges return input end run Скрипт корректно запросит пароль для действий администратора и все добавит :) Еще для запуска и остановки Apache можно написать простенькие приложения используя только один блок AppleScript Start Apache.app on run {input, parameters} do shell script "/usr/sbin/apachectl start" with administrator privileges return input end run Stop Apache.app on run {input, parameters} do shell script "/usr/sbin/apachectl stop" with administrator privileges return input end run Так же можете скачать уже созданные мною приложения и править по вкусу: Add Site.app, Start Apache.app и Stop Apache.app.