Raspberry PI - Slim API 不支持路由

Raspberry PI - Slim API not working with Routes

我正在尝试使用 Slim Framework 在 Raspberry PI 模型 B 上构建一些 Rest api。问题是,当我 运行 / 路由一切正常时,当我尝试 运行 / 测试路由时,我有一个 404.

我认为 .htaccess 和重写规则有一些问题,这是我的结构 api:

var/www/html/   is the root
--api
 --libs
    --Slim
 --index.php
 --.htaccess

这是我的 .htaccess 文件:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [PT,L]

这是我的 index.php 超薄应用程序:

<?php
require '/var/www/html/api/libs/Slim/Slim.php';

\Slim\Slim::registerAutoloader();

$app = new \Slim\Slim();

$app->get('/', function() use($app) {

    echo "Root";

}); 

$app->get('/test', function() use($app) {

   echo "test";

}); 

$app->run();

?>

提前致谢

解法:

我编辑了 etc/apache2/apache2.config 中的文件,更改了这些行

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride None    <----- this to All
    Require all granted
</Directory>

然后用

重启apache2
sudo service apache2 restart

我也需要这条线

sudo a2enmod rewrite

感谢@T0xicCode

您的 Apache 配置(签入 /etc/apache2/)需要 AllowOverride FileInfoAllowOverride All 作为文件所在的目录( /var/www/html/var/www/html/api)。否则 apache 将简单地忽略 .htaccess 并尝试查找名为 test 的文件夹或文件。见 documentation.