v_change_web_domain_sslhome 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. #!/bin/bash
  2. # info: changing domain ssl home
  3. #----------------------------------------------------------#
  4. # Variable&Function #
  5. #----------------------------------------------------------#
  6. # Argument defenition
  7. user=$1
  8. domain=$(idn -t --quiet -u "$2" )
  9. domain_idn=$(idn -t --quiet -a "$domain")
  10. ssl_home=$3
  11. # Includes
  12. source $VESTA/conf/vesta.conf
  13. source $VESTA/func/main.sh
  14. source $VESTA/func/domain.sh
  15. #----------------------------------------------------------#
  16. # Verifications #
  17. #----------------------------------------------------------#
  18. check_args '3' "$#" 'user domain ssl_home'
  19. validate_format 'user' 'domain'
  20. is_system_enabled "$WEB_SYSTEM"
  21. is_object_valid 'user' 'USER' "$user"
  22. is_object_unsuspended 'user' 'USER' "$user"
  23. is_object_valid 'web' 'DOMAIN' "$domain"
  24. is_object_unsuspended 'web' 'DOMAIN' "$domain"
  25. is_object_value_exist 'web' 'DOMAIN' "$domain" '$SSL'
  26. #----------------------------------------------------------#
  27. # Action #
  28. #----------------------------------------------------------#
  29. # Get domain values
  30. get_domain_values 'web'
  31. old_ssl_home=$SSL_HOME
  32. SSL_HOME=$ssl_home
  33. tpl_file="$WEBTPL/apache_$TPL.stpl"
  34. conf="$HOMEDIR/$user/conf/web/shttpd.conf"
  35. # Parsing tpl_option
  36. case $SSL_HOME in
  37. single) new="$HOMEDIR/$user/web/$domain/public_shtml" ;
  38. old="$HOMEDIR/$user/web/$domain/public_html" ;;
  39. same) new="$HOMEDIR/$user/web/$domain/public_html" ;
  40. old="$HOMEDIR/$user/web/$domain/public_shtml" ;;
  41. *) check_args '3' "2" 'user domain sslhome'
  42. esac
  43. # Changing sslhome directory
  44. replace_web_config
  45. # Checking nginx config
  46. if [ ! -z "$NGINX" ]; then
  47. tpl_file="$WEBTPL/ngingx_$NGINX.stpl"
  48. conf="$HOMEDIR/$user/conf/web//snginx.conf"
  49. replace_web_config
  50. fi
  51. #----------------------------------------------------------#
  52. # Vesta #
  53. #----------------------------------------------------------#
  54. # Update config
  55. update_object_value 'web' 'DOMAIN' "$domain" '$SSL_HOME' "$SSL_HOME"
  56. # Restart web server
  57. $BIN/v_restart_web "$EVENT"
  58. # Logging
  59. log_history "$EVENT"
  60. log_event "$OK" "$EVENT"
  61. exit