mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-05 00:29:48 +03:00
Redirect users to login if a page is not public #2138
Closed
opened 2026-02-05 03:04:35 +03:00 by OVERLORD
·
9 comments
No Branch/Tag Specified
development
l10n_development
further_theme_development
release
llm_only
vectors
v25-11
docker_env
drawio_rendering
user_permissions
ldap_host_failover
svg_image
prosemirror
captcha_example
fix/video-export
v25.12.3
v25.12.2
v25.12.1
v25.12
v25.11.6
v25.11.5
v25.11.4
v24.11.4
v25.11.3
v25.11.2
v25.11.1
v25.11
v25.07.3
v25.07.2
v25.07.1
v25.07
v25.05.2
v25.05.1
v25.05
v25.02.5
v25.02.4
v25.02.3
v25.02.2
v25.02.1
v25.02
v24.12.1
v24.12
v24.10.3
v24.10.2
v24.10.1
v24.10
v24.05.4
v24.05.3
v24.05.2
v24.05.1
v24.05
v24.02.3
v24.02.2
v24.02.1
v24.02
v23.12.3
v23.12.2
v23.12.1
v23.12
v23.10.4
v23.10.3
v23.10.2
v23.10.1
v23.10
v23.08.3
v23.08.2
v23.08.1
v23.08
v23.06.2
v23.06.1
v23.06
v23.05.2
v23.05.1
v23.05
v23.02.3
v23.02.2
v23.02.1
v23.02
v23.01.1
v23.01
v22.11.1
v22.11
v22.10.2
v22.10.1
v22.10
v22.09.1
v22.09
v22.07.3
v22.07.2
v22.07.1
v22.07
v22.06.2
v22.06.1
v22.06
v22.04.2
v22.04.1
v22.04
v22.03.1
v22.03
v22.02.3
v22.02.2
v22.02.1
v22.02
v21.12.5
v21.12.4
v21.12.3
v21.12.2
v21.12.1
v21.12
v21.11.3
v21.11.2
v21.11.1
v21.11
v21.10.3
v21.10.2
v21.10.1
v21.10
v21.08.6
v21.08.5
v21.08.4
v21.08.3
v21.08.2
v21.08.1
v21.08
v21.05.4
v21.05.3
v21.05.2
v21.05.1
v21.05
v21.04.6
v21.04.5
v21.04.4
v21.04.3
v21.04.2
v21.04.1
v21.04
v0.31.8
v0.31.7
v0.31.6
v0.31.5
v0.31.4
v0.31.3
v0.31.2
v0.31.1
v0.31.0
v0.30.7
v0.30.6
v0.30.5
v0.30.4
v0.30.3
v0.30.2
v0.30.1
v0.30.0
v0.29.3
v0.29.2
v0.29.1
v0.29.0
v0.28.3
v0.28.2
v0.28.1
v0.28.0
v0.27.5
v0.27.4
v0.27.3
v0.27.2
v0.27.1
v0.27
v0.26.4
v0.26.3
v0.26.2
v0.26.1
v0.26.0
v0.25.5
v0.25.4
v0.25.3
v0.25.2
v0.25.1
v0.25.0
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.2
v0.23.1
v0.23.0
v0.22.0
v0.21.0
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.0
v0.18.5
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.0
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.15.3
v0.15.2
v0.15.1
v0.15.0
v0.14.3
v0.14.2
v0.14.1
v0.14.0
v0.13.1
v0.13.0
v0.12.2
v0.12.1
v0.12.0
v0.11.2
v0.11.1
v0.11.0
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.6
v0.7.5
v0.7.4
v0.7.3
0.7.2
v.0.7.1
v0.7.0
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.0
Labels
Clear labels
🎨 Design
📖 Docs Update
🐛 Bug
🐛 Bug
:cat2:🐈 Possible duplicate
💿 Database
☕ Open to discussion
💻 Front-End
🐕 Support
🚪 Authentication
🌍 Translations
🔌 API Task
🏭 Back-End
⛲ Upstream
🔨 Feature Request
🛠️ Enhancement
🛠️ Enhancement
🛠️ Enhancement
❤️ Happy feedback
🔒 Security
🔍 Pending Validation
💆 UX
📝 WYSIWYG Editor
🌔 Out of scope
🔩 API Request
:octocat: Admin/Meta
🖌️ View Customization
❓ Question
🚀 Priority
🛡️ Blocked
🚚 Export System
♿ A11y
🔧 Maintenance
> Markdown Editor
No Label
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#2138
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @dorianim on GitHub (Mar 2, 2021).
Describe the feature you'd like
Redirect users to login if they are trying to access a page that is not available publicly. Currently, it looks like the page does not exist in that case.
Describe the benefits this feature would bring to BookStack users
For inexperienced users, it would be much more intuitive to be redirected to the login form immediately when they are trying to access a page that does exist but is not open for the public.
Additional context
We want to use BookStack for internal documentation and many of our users are confused when they get the error that the page does not exist.
Would be nice to have a solution for this :)
@ssddanbrown commented on GitHub (Mar 2, 2021):
Hi @CodeCrafter912,
Just to confirm, your BookStack instance is a mix of public and non-public information?
@dorianim commented on GitHub (Mar 2, 2021):
Hi @ssddanbrown
Yes, indeed :)
@ssddanbrown commented on GitHub (Mar 3, 2021):
@CodeCrafter912 Thanks for confirming. The lack of distinction is done kind of on purpose to otherwise you're leaking the fact that the content exists. Even if we did do this, we won't know if the user will be able to view the content once logged in so the auto-redirect to login could cause more confusion in those cases.
We've tried to hint to users within this view with the text that shows:
We also show the login button as one of the primary actions as a further hint.
If customizing the 404 page HTML would help I can provide some guidance how to do so using the theme system. Just let me know.
@dorianim commented on GitHub (Mar 3, 2021):
Hi @ssddanbrown
I understand that this is unfortunate. But modifying the 404 page might hlep indeed, I will look into that, thanks :)
@dorianim commented on GitHub (Mar 4, 2021):
Alright, so I modified the theme in a way that makes the situation more clear for our users.
Would it be possible to pass some GET parameter to
/loginwhich contains the redirect URL?This way I could create a URL which directs users to the login and to the desired page afterwards.
How is this done currently? Using the Referrer Header?
Thanks for your efforts :)
@dorianim commented on GitHub (Mar 4, 2021):
Another option would be to simply
@include('auth.forms.login.ldap')the login form into the 404 page, but for doing that I would also need some way to tell BookStack not to redirect to / after a successful login. Is that somehow possible?@ssddanbrown commented on GitHub (Mar 5, 2021):
Yeah, This should already work right now, as long as you lead users directly to the login page. The login route re-stores the previous page URL to allow follow-on redirect to the previous location. Just tested on the demo site and seems to work as detailed.
@dorianim commented on GitHub (Mar 5, 2021):
I found a perfect solution for me:
I simply included the login form into the 404 component and manually set the
url.intendedsession parameter to redirect to the page I want:This works for me and I understand that you don't want to build this into the official version, so I am closing this issue.
The theme engine is great by the way! 😃
@ssddanbrown commented on GitHub (Mar 6, 2021):
@CodeCrafter912 Awesome, Good to see someone put the theme system to good use. Just keep in mind that the views are not considered stable so you may want to quickly check any customizations are working after any updates.
Going forward I want to slowly break the views down into smaller blocks for easier & more selective overriding.