Url重写和谷歌机器人txt


url rewrite and google robots txt

我使用php slim框架,用url重写这里是我的主机真实的文件结构:
像大多数框架一样,所有的都重写为index.php

/.htaccess
/assets
/index.php
/phpinfo.php
/robots.txt
/usr
    /controller
    /model
    ...

这是我的路由器

$app->get('/backstage', $authenticate(), function () use ($uri, $app) {...});
$app->get('/api', $authenticate(), function () use ($uri, $app) {...});
$app->get('/', function () use ($uri, $app) {...});
$app->get('/article', function () use ($uri, $app) {...});

如何在我的路由中禁用/backstage, /api和真实文件路径/phpin.php, /usr
并且在路由器中接受/, /article ?

我很困惑,我应该填写路由器路径还是真实的文件路径?因为真实的文件路径不存在/article


and this is I try

User-agent: *
Disallow: /backstage/
Disallow: /phpinfo.php

首先(假设您使用apache),您需要确保您的。Htaccess 文件正确地将请求指向路由器文件。

——begin .htaccess代码段——

<IfModule mod_rewrite.c>
    RewriteEngine On    
    ## direct all requests to Slim router
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ slim-router.php [QSA,L]
</IfModule>
——

我可能没有正确理解你的问题,但是要禁用路由,只需注释掉slim-router.php中添加路由的行。

将条目添加到robots.txt不会阻止浏览器访问URI,它的存在只是为了要求搜索引擎机器人(即。, GoogleBot)不索引特定的URI。参见robotstxt.org和维基百科上的robots.txt条目。

要将路由指向现有文件,可以使用'Slim'View(请参阅'Slim'View文档)。本例期望存在一个名为templates/article.php的文件,该文件将输出/article路由的内容。使用'Slim'View类,您还可以向模板文件发送数据,我在下面也演示了这一点。这只是一个基本的例子,有关更复杂的用法,请参阅文档。

//——开始slim-router.php

    $app = new 'Slim'Slim();
    $defview = new 'Slim'View();
    $defview->setTemplatesDirectory(realpath(__DIR__).'/templates');
    $app->get(
        '/article',
        function () use ($app) {
          global $defview;
          //show the contents of 'templates/article.php', passing optional data to the template file:
          $app->view($defview)->display(
              'article.php', 
              array(
                 'data_one'=>'one',
                 'data_two'=>2,
                 'three'=>'3',
              )
          );
        }
    );        

//——