diff --git a/frontend/src/pages/sys-admin/web-settings/input-item.js b/frontend/src/pages/sys-admin/web-settings/input-item.js index 41c5e32fff..577397adba 100644 --- a/frontend/src/pages/sys-admin/web-settings/input-item.js +++ b/frontend/src/pages/sys-admin/web-settings/input-item.js @@ -23,6 +23,10 @@ class WebSettingInput extends Component { }; } + UNSAFE_componentWillReceiveProps(nextProps) { + this.setState({value: nextProps.value}); + } + toggleBtns = () => { this.setState({isBtnsShown: !this.state.isBtnsShown}); }; diff --git a/scripts/setup-seafile-mysql.py b/scripts/setup-seafile-mysql.py index 1f20cde7fd..9c5dcf0010 100644 --- a/scripts/setup-seafile-mysql.py +++ b/scripts/setup-seafile-mysql.py @@ -1042,7 +1042,7 @@ class SeahubConfigurator(AbstractConfigurator): fp.write('\n') self.write_secret_key(fp) fp.write('\n') - fp.write('SERVICE_URL = "http://%s/"' % ccnet_config.ip_or_domain) + fp.write('SERVICE_URL = "http://%s"' % ccnet_config.ip_or_domain) fp.write('\n') self.write_database_config(fp) diff --git a/scripts/setup-seafile.sh b/scripts/setup-seafile.sh index 4df5c9d8fb..f1edbae432 100755 --- a/scripts/setup-seafile.sh +++ b/scripts/setup-seafile.sh @@ -543,7 +543,7 @@ if [[ ! -f ${dest_settings_py} ]]; then # -*- coding: utf-8 -*- SECRET_KEY = "$key" -SERVICE_URL = "http://$ip_or_domain/" +SERVICE_URL = "http://$ip_or_domain" EOF fi diff --git a/seahub/api2/endpoints/admin/web_settings.py b/seahub/api2/endpoints/admin/web_settings.py index 920c84bbd7..ae98dd4a66 100644 --- a/seahub/api2/endpoints/admin/web_settings.py +++ b/seahub/api2/endpoints/admin/web_settings.py @@ -95,6 +95,9 @@ class AdminWebSettings(APIView): error_msg = 'value invalid.' return api_error(status.HTTP_400_BAD_REQUEST, error_msg) + if key in ('SERVICE_URL', 'FILE_SERVER_ROOT'): + value = value.rstrip('/') + try: setattr(config, key, value) except AttributeError as e: