リモートホストごとの同時アクセス制御とメタデータ取得ポリシー制御

This commit is contained in:
shibafu
2020-08-11 00:17:10 +09:00
parent f715e7feee
commit b71b7e5cb2
5 changed files with 387 additions and 67 deletions

View File

@@ -0,0 +1,30 @@
<?php
namespace App\MetadataResolver;
use RuntimeException;
use Throwable;
/**
* ContentProviderの提供するrobots.txtによってクロールが拒否された場合にスローされます。
*/
class DisallowedByProviderException extends RuntimeException
{
private $url;
public function __construct(string $url, Throwable $previous = null)
{
parent::__construct("Access denied by robots.txt: $url", 0, $previous);
$this->url = $url;
}
public function getUrl(): string
{
return $this->url;
}
public function getHost(): string
{
return parse_url($this->url, PHP_URL_HOST);
}
}