v-change-web-domain-sslhome 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  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/func/main.sh
  13. source $VESTA/func/domain.sh
  14. source $VESTA/conf/vesta.conf
  15. #----------------------------------------------------------#
  16. # Verifications #
  17. #----------------------------------------------------------#
  18. check_args '3' "$#" 'USER DOMAIN SSL_HOME'
  19. validate_format 'user' 'domain'
  20. is_system_enabled "$WEB_SYSTEM" '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/$WEB_SYSTEM/$WEB_BACKEND/$TPL.stpl"
  34. conf="$HOMEDIR/$user/conf/web/s$WEB_SYSTEM.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 proxy config
  46. if [ ! -z "$PROXY" ]; then
  47. tpl_file="$WEBTPL/$PROXY_SYSTEM/$PROXY.stpl"
  48. conf="$HOMEDIR/$user/conf/web/s$PROXY_SYSTEM.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
  58. if [ $? -ne 0 ]; then
  59. exit $E_RESTART
  60. fi
  61. $BIN/v-restart-proxy
  62. if [ $? -ne 0 ]; then
  63. exit $E_RESTART
  64. fi
  65. # Logging
  66. log_history "changed ssl home for $domain to $ssl_home"
  67. log_event "$OK" "$EVENT"
  68. exit