mirror of https://github.com/jumpserver/jumpserver
[Update] 优化重定向
parent
a0e6d09770
commit
a463f632e8
|
@ -64,6 +64,14 @@ js_i18n_patterns = i18n_patterns(
|
|||
)
|
||||
|
||||
|
||||
apps = [
|
||||
'users', 'assets', 'perms', 'terminal', 'ops', 'audits', 'orgs', 'auth',
|
||||
'applications', 'tickets', 'settings', 'xpack'
|
||||
'flower', 'luna', 'koko', 'ws', 'i18n', 'jsi18n', 'docs', 'redocs',
|
||||
'zh-hans'
|
||||
]
|
||||
|
||||
|
||||
urlpatterns = [
|
||||
path('', views.IndexView.as_view(), name='index'),
|
||||
path('api/v1/', include(api_v1)),
|
||||
|
@ -79,6 +87,10 @@ urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) \
|
|||
+ static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
|
||||
urlpatterns += js_i18n_patterns
|
||||
|
||||
# 兼容之前的
|
||||
old_app_pattern = '|'.join(apps)
|
||||
urlpatterns += [re_path(old_app_pattern, views.redirect_old_apps_view)]
|
||||
|
||||
handler404 = 'jumpserver.views.handler404'
|
||||
handler500 = 'jumpserver.views.handler500'
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
import re
|
||||
import time
|
||||
|
||||
from django.http import HttpResponseRedirect, JsonResponse
|
||||
from django.http import HttpResponseRedirect, JsonResponse, Http404
|
||||
from django.conf import settings
|
||||
from django.views.generic import View
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
|
@ -16,7 +16,7 @@ from common.http import HttpResponseTemporaryRedirect
|
|||
|
||||
__all__ = [
|
||||
'LunaView', 'I18NView', 'KokoView', 'WsView', 'HealthCheckView',
|
||||
'redirect_format_api'
|
||||
'redirect_format_api', 'redirect_old_apps_view'
|
||||
]
|
||||
|
||||
|
||||
|
@ -51,6 +51,14 @@ def redirect_format_api(request, *args, **kwargs):
|
|||
return JsonResponse({"msg": "Redirect url failed: {}".format(_path)}, status=404)
|
||||
|
||||
|
||||
def redirect_old_apps_view(request, *args, **kwargs):
|
||||
path = request.get_full_path()
|
||||
if path.find('/core') != -1:
|
||||
raise Http404()
|
||||
new_path = '/core{}'.format(path)
|
||||
return HttpResponseTemporaryRedirect(new_path)
|
||||
|
||||
|
||||
class HealthCheckView(APIView):
|
||||
permission_classes = ()
|
||||
|
||||
|
|
Loading…
Reference in New Issue