v-change-web-domain-sslhome 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. #!/bin/bash
  2. # info: changing domain ssl home
  3. #----------------------------------------------------------#
  4. # Variable&Function #
  5. #----------------------------------------------------------#
  6. # Argument definition
  7. user=$1
  8. domain=$2
  9. ssl_home=$3
  10. restart=$4
  11. # Includes
  12. source $VESTA/func/main.sh
  13. source $VESTA/func/domain.sh
  14. source $VESTA/conf/vesta.conf
  15. # Additional argument formatting
  16. format_domain
  17. format_domain_idn
  18. #----------------------------------------------------------#
  19. # Verifications #
  20. #----------------------------------------------------------#
  21. check_args '3' "$#" 'USER DOMAIN SSL_HOME [RESTART]'
  22. is_format_valid 'user' 'domain'
  23. is_system_enabled "$WEB_SYSTEM" 'WEB_SYSTEM'
  24. is_object_valid 'user' 'USER' "$user"
  25. is_object_unsuspended 'user' 'USER' "$user"
  26. is_object_valid 'web' 'DOMAIN' "$domain"
  27. is_object_unsuspended 'web' 'DOMAIN' "$domain"
  28. is_object_value_exist 'web' 'DOMAIN' "$domain" '$SSL'
  29. #----------------------------------------------------------#
  30. # Action #
  31. #----------------------------------------------------------#
  32. # Get domain values
  33. get_domain_values 'web'
  34. old_ssl_home=$SSL_HOME
  35. SSL_HOME=$ssl_home
  36. # Parsing tpl_option
  37. case $SSL_HOME in
  38. single) new="$HOMEDIR/$user/web/$domain/public_shtml" ;
  39. old="$HOMEDIR/$user/web/$domain/public_html" ;;
  40. same) new="$HOMEDIR/$user/web/$domain/public_html" ;
  41. old="$HOMEDIR/$user/web/$domain/public_shtml" ;;
  42. *) check_args '3' "2" 'USER DOMAIN SSLHOME'
  43. esac
  44. # Changing sslhome directory
  45. replace_web_config "$WEB_SYSTEM" "$TPL.stpl"
  46. # Changing proxy vhost
  47. if [ ! -z "$PROXY_SYSTEM" ] && [ ! -z "$PROXY" ]; then
  48. replace_web_config "$PROXY_SYSTEM" "$PROXY.stpl"
  49. fi
  50. #----------------------------------------------------------#
  51. # Vesta #
  52. #----------------------------------------------------------#
  53. # Update config
  54. update_object_value 'web' 'DOMAIN' "$domain" '$SSL_HOME' "$SSL_HOME"
  55. # Restarting web server
  56. $BIN/v-restart-web $restart
  57. check_result $? "Web restart failed" >/dev/null
  58. $BIN/v-restart-proxy $restart
  59. check_result $? "Proxy restart failed" >/dev/null
  60. # Logging
  61. log_history "changed ssl home for $domain to $ssl_home"
  62. log_event "$OK" "$ARGUMENTS"
  63. exit