Guest User

Untitled

a guest
Dec 10th, 2018
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. ##########
  4. # Config #
  5. ##########
  6. CONF_VHOSTS_DIR="/etc/nginx/vhosts"
  7. CONF_VHOST_SKEL="/etc/nginx/vhost.skel"
  8. CONF_HOSTS_FILE="/etc/hosts"
  9. CONF_SERVER_DAEMON="/etc/rc.d/nginx"
  10. CONF_SERVER_RELOAD="reload"
  11. CONF_IP="127.0.0.1"
  12.  
  13. #############
  14. # Read args #
  15. #############
  16. VHOST_NAME=$1
  17. VHOST_DOCROOT=$2
  18. VHOST_DOMAINS=$3
  19.  
  20. ############
  21. # Var init #
  22. ############
  23. FILE="$CONF_VHOSTS_DIR/$VHOST_NAME"
  24.  
  25. cat <<EOF
  26. Vhost creator 0.1
  27. =================
  28. EOF
  29.  
  30. # Verifi args
  31. if [ `whoami` != "root" ]
  32. then
  33. echo "Please run as root" >&2
  34. #elif [[ -n "$VHOST_NAME" && -n "$VHOST_DOCROOT" && -n "$VHOST_DOMAINS" ]]
  35. elif [ $# == 3 ]
  36. then
  37. if [ ! -d "$CONF_VHOSTS_DIR" ]
  38. then
  39. echo "Vhosts dir ${CONF_VHOSTS_DIR} does not exist" >&2
  40. elif [ ! -f "$CONF_VHOST_SKEL" ]
  41. then
  42. echo "Vhost skeleton file ${CONF_VHOST_SKEL} does not exist" >&2
  43. elif [ ! -d "$VHOST_DOCROOT" ]
  44. then
  45. echo "Vhost document root ${VHOST_DOCROOT} does not exist" >&2
  46. elif [ -f "$FILE" ]
  47. then
  48. echo "Vhost file ${FILE} allready exist" >&2
  49. else
  50. echo "Creating file"
  51. cp "${CONF_VHOST_SKEL}" "${FILE}"
  52. sed -i -e "s,{{DOMAINS}},${VHOST_DOMAINS},g" "${FILE}"
  53. sed -i -e "s,{{DOCROOT}},${VHOST_DOCROOT},g" "${FILE}"
  54.  
  55. echo "Adding host to hosts"
  56. echo "${CONF_IP} ${VHOST_DOMAINS}" >> "${CONF_HOSTS_FILE}"
  57.  
  58. echo "Reloading server"
  59. echo `$CONF_SERVER_DAEMON $CONF_SERVER_RELOAD`
  60. fi
  61. else
  62. cat <<EOF
  63. Params:
  64. - vhost name
  65. - document root
  66. - domains ("foo.local bar.local")
  67.  
  68. EOF
  69. fi
Add Comment
Please, Sign In to add comment