路由不适用于 Slim 框架

问题描述 投票:0回答:2

我正在学习 slim 框架。我有一点必须设置我的网络服务器,以便我可以看到类似 http://slimapp 而不是 http://localhost/slimapp/public/index.php.

我像这样在项目的公用文件夹中包含了一个 .htaccess 文件

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule . index.php [L]

我还在我的wamp服务器上设置了一个虚拟主机

<VirtualHost *:80>
    DocumentRoot "C:\wamp64\www\slimapp\public"
    ServerName slimapp

    <Directory "C:\wamp64\www\slimapp\public">
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

我也把这个添加到我的主机文件

127.0.0.1 slimapp 

我重新启动了我的服务器,但当我尝试访问我的路线时出现“未找到”错误。

"Not Found
The requested URL /hello/uche was not found on this server."

这是我的 index.php 文件

<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;

require '../vendor/autoload.php';

$app = new \Slim\App;
$app->get('/hello/{name}', function (Request $request, Response $response) {
    $name = $request->getAttribute('name');
    $response->getBody()->write("Hello, $name");

    return $response;
});
$app->run();

请在这里帮助我。

php .htaccess slim
2个回答
0
投票

尝试将 .htaccess 文件移动到根目录


0
投票

如果有人仍然遇到这个问题,我就是这样解决的:

启用模型重写。在您的终端类型中:

sudo a2enmod 重写 && sudo 服务 apache2 重启

http://help.slimframework.com/discussions/problems/10216-beginner-routes-not-working

© www.soinside.com 2019 - 2024. All rights reserved.