Php Raspberry PI-Slim API不适用于路由
我正在尝试用Slim框架在Raspberry PI模型B上构建一些RESTAPI。问题是,当我运行/route时,一切正常,当我尝试运行/testroute时,我有一个404 我认为.htaccess和rewrite规则存在一些问题,这是我的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
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