Skip to content

Instantly share code, notes, and snippets.

@germani
Last active January 9, 2021 23:22
Show Gist options
  • Save germani/e86a63563b6ace565daf to your computer and use it in GitHub Desktop.
Save germani/e86a63563b6ace565daf to your computer and use it in GitHub Desktop.
vhost mac os
#!/bin/bash
SITE_DIR=/Users/$USER/Sites
DOT_LOCAL=.local
echo $HOME
echo $USER
echo -e "Введите название проекта (Например example)";
read PROJECT
echo -e "Введите домен первого уровня (Например .com)";
read DOT_COM
#создаем папки проекта
sudo mkdir $SITE_DIR/$PROJECT$DOT_COM
sudo mkdir $SITE_DIR/$PROJECT$DOT_COM/www/
#указываем владельца и права на папку "public"
sudo chown -R $USER:staff $SITE_DIR/$PROJECT$DOT_COM/
sudo chown -R $USER:staff $SITE_DIR/$PROJECT$DOT_COM/www/
echo "Созданы папки:"
echo $SITE_DIR/$PROJECT$DOT_COM/
echo $SITE_DIR/$PROJECT$DOT_COM/www/
# Создаем страничку в public для того чтобы сайт хоть что-то отражал
touch $SITE_DIR/$PROJECT$DOT_COM/www/index.html
echo "Поздравляем Ваш сайт работает $PROJECT" >> $SITE_DIR/$PROJECT$DOT_COM/www/index.html
sudo chown -R $USER:staff $SITE_DIR/$PROJECT$DOT_COM/www/index.html
add_to_nginx_conf="
server {
listen 80;
server_name $PROJECT$DOT_LOCAL;
root $SITE_DIR/$PROJECT$DOT_COM/www;
index index.php index.html index.htm;
location ~ \.php {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include /usr/local/etc/nginx/fastcgi_params;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param PATH_INFO \$fastcgi_path_info;
fastcgi_param PATH_TRANSLATED \$document_root\$fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
}
error_log /usr/local/etc/nginx/logs/$PROJECT$DOT_COM.error.log;
access_log /usr/local/etc/nginx/logs/$PROJECT$DOT_COM.access.log;
}
"
echo "создаем nginx конф"
touch /usr/local/etc/nginx/sites-available/$PROJECT$DOT_COM
echo "$add_to_nginx_conf" >> /usr/local/etc/nginx/sites-available/$PROJECT$DOT_COM
ln -sfv /usr/local/etc/nginx/sites-available/$PROJECT$DOT_COM /usr/local/etc/nginx/sites-enabled/$PROJECT$DOT_COM
echo "Рестар Nginx"
# Рестар Nginx
sudo nginx -s reload
echo "***********************************"
echo "** Запомните следующие данные : **"
echo "***********************************"
echo "** "
echo "** Ваш сайт нужно разместить в этот каталог: $SITE_DIR/$PROJECT$DOT_LOCAL/www"
echo "** "
echo "** добавить HOSTS"
echo "127.0.0.1 $PROJECT$DOT_LOCAL"
echo " в /etc/hosts"
echo "перегрузить хост dscacheutil -flushcache"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment