mirror of
https://github.com/shlinkio/shlink.git
synced 2026-02-28 04:03:12 +08:00
Some extra minor improvements
This commit is contained in:
@@ -133,7 +133,9 @@ docker run \
|
|||||||
-e DISABLE_TRACK_PARAM="no-track" \
|
-e DISABLE_TRACK_PARAM="no-track" \
|
||||||
-e DELETE_SHORT_URL_THRESHOLD=30 \
|
-e DELETE_SHORT_URL_THRESHOLD=30 \
|
||||||
-e VALIDATE_URLS=false \
|
-e VALIDATE_URLS=false \
|
||||||
-e "NOT_FOUND_REDIRECT_TO=https://www.google.com" \
|
-e "INVALID_SHORT_URL_REDIRECT_TO=https://my-landing-page.com" \
|
||||||
|
-e "REGULAR_404_REDIRECT_TO=https://my-landing-page.com" \
|
||||||
|
-e "BASE_URL_REDIRECT_TO=https://my-landing-page.com" \
|
||||||
-e "REDIS_SERVERS=tcp://172.20.0.1:6379,tcp://172.20.0.2:6379" \
|
-e "REDIS_SERVERS=tcp://172.20.0.1:6379,tcp://172.20.0.2:6379" \
|
||||||
-e "BASE_PATH=/my-campaign" \
|
-e "BASE_PATH=/my-campaign" \
|
||||||
shlinkio/shlink
|
shlinkio/shlink
|
||||||
|
|||||||
@@ -7,14 +7,10 @@ namespace Shlinkio\Shlink\Core\Action;
|
|||||||
use Psr\Http\Message\ResponseInterface as Response;
|
use Psr\Http\Message\ResponseInterface as Response;
|
||||||
use Psr\Http\Message\ServerRequestInterface;
|
use Psr\Http\Message\ServerRequestInterface;
|
||||||
use Psr\Http\Server\RequestHandlerInterface;
|
use Psr\Http\Server\RequestHandlerInterface;
|
||||||
use Shlinkio\Shlink\Core\Options;
|
|
||||||
use Zend\Diactoros\Response\RedirectResponse;
|
use Zend\Diactoros\Response\RedirectResponse;
|
||||||
|
|
||||||
class RedirectAction extends AbstractTrackingAction
|
class RedirectAction extends AbstractTrackingAction
|
||||||
{
|
{
|
||||||
/** @var Options\NotFoundRedirectOptions */
|
|
||||||
private $redirectOptions;
|
|
||||||
|
|
||||||
protected function createSuccessResp(string $longUrl): Response
|
protected function createSuccessResp(string $longUrl): Response
|
||||||
{
|
{
|
||||||
// Return a redirect response to the long URL.
|
// Return a redirect response to the long URL.
|
||||||
|
|||||||
@@ -23,8 +23,8 @@ use function rtrim;
|
|||||||
|
|
||||||
class NotFoundHandler implements RequestHandlerInterface
|
class NotFoundHandler implements RequestHandlerInterface
|
||||||
{
|
{
|
||||||
public const NOT_FOUND_ERROR_TEMPLATE = 'ShlinkCore::error/404';
|
public const NOT_FOUND_TEMPLATE = 'ShlinkCore::error/404';
|
||||||
public const INVALID_SHORT_CODE_ERROR_TEMPLATE = 'ShlinkCore::invalid-short-code';
|
public const INVALID_SHORT_CODE_TEMPLATE = 'ShlinkCore::invalid-short-code';
|
||||||
|
|
||||||
/** @var TemplateRendererInterface */
|
/** @var TemplateRendererInterface */
|
||||||
private $renderer;
|
private $renderer;
|
||||||
@@ -72,10 +72,8 @@ class NotFoundHandler implements RequestHandlerInterface
|
|||||||
], $status);
|
], $status);
|
||||||
}
|
}
|
||||||
|
|
||||||
$notFoundTemplate = $routeResult->isFailure()
|
$template = $routeResult->isFailure() ? self::NOT_FOUND_TEMPLATE : self::INVALID_SHORT_CODE_TEMPLATE;
|
||||||
? self::NOT_FOUND_ERROR_TEMPLATE
|
return new Response\HtmlResponse($this->renderer->render($template), $status);
|
||||||
: self::INVALID_SHORT_CODE_ERROR_TEMPLATE;
|
|
||||||
return new Response\HtmlResponse($this->renderer->render($notFoundTemplate), $status);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private function createRedirectResponse(RouteResult $routeResult, UriInterface $uri): ?ResponseInterface
|
private function createRedirectResponse(RouteResult $routeResult, UriInterface $uri): ?ResponseInterface
|
||||||
|
|||||||
@@ -130,13 +130,13 @@ class NotFoundHandlerTest extends TestCase
|
|||||||
{
|
{
|
||||||
$request = ServerRequestFactory::fromGlobals();
|
$request = ServerRequestFactory::fromGlobals();
|
||||||
|
|
||||||
yield [$request, NotFoundHandler::NOT_FOUND_ERROR_TEMPLATE];
|
yield [$request, NotFoundHandler::NOT_FOUND_TEMPLATE];
|
||||||
yield [
|
yield [
|
||||||
$request->withAttribute(
|
$request->withAttribute(
|
||||||
RouteResult::class,
|
RouteResult::class,
|
||||||
RouteResult::fromRoute(new Route('', $this->prophesize(MiddlewareInterface::class)->reveal()))
|
RouteResult::fromRoute(new Route('', $this->prophesize(MiddlewareInterface::class)->reveal()))
|
||||||
),
|
),
|
||||||
NotFoundHandler::INVALID_SHORT_CODE_ERROR_TEMPLATE,
|
NotFoundHandler::INVALID_SHORT_CODE_TEMPLATE,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user