Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Raspberry PI-Slim API不适用于路由_Php_.htaccess_Apache2_Slim_Raspberry Pi2 - Fatal编程技术网

Php Raspberry PI-Slim API不适用于路由

Php Raspberry PI-Slim API不适用于路由,php,.htaccess,apache2,slim,raspberry-pi2,Php,.htaccess,Apache2,Slim,Raspberry Pi2,我正在尝试用Slim框架在Raspberry PI模型B上构建一些RESTAPI。问题是,当我运行/route时,一切正常,当我尝试运行/testroute时,我有一个404 我认为.htaccess和rewrite规则存在一些问题,这是我的api结构: var/www/html/ is the root --api --libs --Slim --index.php --.htaccess 这是我的.htaccess文件: RewriteEngine On RewriteC

我正在尝试用Slim框架在Raspberry PI模型B上构建一些RESTAPI。问题是,当我运行/route时,一切正常,当我尝试运行/testroute时,我有一个404

我认为.htaccess和rewrite规则存在一些问题,这是我的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 slim应用程序:

<?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();

?>
我还需要这条线

sudo a2enmod rewrite
感谢@T0xicCode

您的apache配置(签入/etc/apache2/)需要有
AllowOverride FileInfo
AllowOverride All
作为文件所在的目录(/var/www/html或/var/www/html/api)。否则apache将忽略.htaccess并尝试查找名为
test
的文件夹或文件。请参阅。

您的apache配置(签入/etc/apache2/)需要
AllowOverride FileInfo
AllowOverride All
,以获取文件所在的目录(/var/www/html或/var/www/html/api)。否则apache将忽略.htaccess并尝试查找名为
test
的文件夹或文件。看

sudo service apache2 restart
sudo a2enmod rewrite