mirror of
https://github.com/discourse/discourse.git
synced 2025-09-06 10:50:21 +08:00
FEATURE: permalink normalization
Optionally allow admins to apply regex based normalization to permalinks prior to matching. This allows us to drop query string, or cleanly ignore slugs, etc.
This commit is contained in:
parent
d20324ece8
commit
b772d96f7a
5 changed files with 92 additions and 4 deletions
|
@ -10,6 +10,17 @@ describe PermalinksController do
|
|||
expect(response.status).to eq(301)
|
||||
end
|
||||
|
||||
it "should apply normalizations" do
|
||||
SiteSetting.permalink_normalizations = "/(.*)\\?.*/\\1"
|
||||
|
||||
permalink = Fabricate(:permalink, url: '/topic/bla', external_url: '/topic/100')
|
||||
|
||||
get :show, url: permalink.url, test: "hello"
|
||||
|
||||
expect(response).to redirect_to('/topic/100')
|
||||
expect(response.status).to eq(301)
|
||||
end
|
||||
|
||||
it 'return 404 if permalink record does not exist' do
|
||||
get :show, url: '/not/a/valid/url'
|
||||
expect(response.status).to eq(404)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue