spatie / laravel-missing-page-redirector

Redirect missing pages in your Laravel application
https://freek.dev/598-retain-your-seo-worth-by-correctly-redirecting-missing-pages-in-a-laravel-application
MIT License
488 stars 38 forks source link

Optional parameters not working as expected #44

Closed vkovic closed 6 years ago

vkovic commented 6 years ago

README.md example:

    'redirects' => [
       '/old-blog/{url?}' => '/new-blog/{url}',
    ],

If we visit "/old-blog" it'll not redirect.

One particular test is not written correctly:

public function it_can_use_optional_parameters()
    {
        $this->app['config']->set('missing-page-redirector.redirects', [
            '/old-segment/{parameter1?}/{parameter2?}' => '/new-segment/',
        ]);

        $this
            ->get('/old-segment')
            ->assertRedirect('/new-segment');

        $this
            ->get('/old-segment/old-segment2')
            ->assertRedirect('/new-segment');

        $this
            ->get('/old-segment/old-segment2/old-segment3')
            ->assertRedirect('/new-segment/old-segment2/old-segment3');
    }

According to documentation, it shold be:

// ...

'/old-segment/{parameter1?}/{parameter2?}' => '/new-segment/{parameter1}/{parameter2}',

// ...

but than, it'll fail.

brendt commented 6 years ago

This is fixed in 2.3.1: https://github.com/spatie/laravel-missing-page-redirector/releases/tag/2.3.1