我们的网站是http://test.dobrobut.com/
我需要将所有http://test.dobrobut.com/phpBB3/index.php?anything_here
次请求重定向到404.
所以,这是问题所在。
Urlmanager开始在请求中的index.php之后为所有内容应用规则。
所以我可以提出像
http://test.dobrobut.com/dsfdsf/dsfdsf/dsfdsf/dsf/index.php
要么
http://test.dobrobut.com/index.php/index.php/index.php/index.php
它将导致网站/索引。
我们有:
'showScriptName' => false,
'enableStrictParsing' => true,
'enablePrettyUrl' => true,
那么如何将所有请求重定向到http://test.dobrobut.com/phpBB3/index.php
到404?
答案 0 :(得分:0)
您应该能够使用Yii's URL routing rules来完成此任务。在urlManager配置中指定以下内容:
'showScriptName' => false,
'enableStrictParsing' => true,
'enablePrettyUrl' => true,
'rules' => [
'host' => 'http://test.dobrobut.com',
'pattern' => 'phpBB3/index.php',
'route' => 'site/lost',
],
以上配置将路由所有命中的请求:
test.dobrobut.com/phpBB3/index.php
到站点控制器的“丢失”操作。这意味着您必须按以下方式设置站点控制器:
use yii\web\HttpException;
class SiteController extends Controller
{
// lot's of code and other actions here ..
public function actionLost()
{
throw new HttpException(404, 'Sorry, the requested resource could not be found');
}
}