【问题标题】:PHP Slim Framework Routing does only work locallyPHP Slim 框架路由只在本地工作
【发布时间】:2019-07-30 14:54:38
【问题描述】:

我使用 Slim 框架构建了一些小型路由。一切都在本地完美运行。我现在租了一个 Droplet 并在 Ubuntu 18.04 上使用了 LAMP 堆栈。我的应用程序位于位置/var/www/src/public

我已经把这个添加到apache.conf

<Directory /var/www/src/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>

我的000-default.conf 已经设置了正确的路线。

我的.htaccess.txt 位于/public,我的index.php 包含:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [QSA,L]

我已经为 Apache 启用了mod_rewrite

当我调用服务器 IP 地址时,主页已成功加载 Slim,其中路由设置如下:

$app->get('/', function (Request $request, Response $response) {
    return $this->renderer->render($response, "/index.php");
});

所以 Slim 似乎正确地渲染了我的 index.php,它位于目录 /var/www/views 中。该路径在容器中定义如下:

$container['renderer'] = new PhpRenderer("../../views");

当我尝试访问例如站点 ip_address/player 时,问题就开始了,即使它已正确路由并且在本地运行。尝试访问它会在浏览器中给我这个:

Not Found
The requested URL /player was not found on this server.

我已经用谷歌搜索了几个小时尝试不同的解决方案,但我就是无法让它发挥作用。任何帮助将不胜感激。

【问题讨论】:

  • 我解决了这个问题,因为我有一个简单的问题...... .htaccess 是一个 .htaccess.txt。这真的很尴尬lol

标签: php apache ubuntu slim lamp


【解决方案1】:

不应该是 .htaccess 而不是 .htaccess.txt。您使用的是哪种操作系统?

【讨论】:

  • 你能接受我的回答吗,它对你有帮助。
  • 这就是我遇到的问题。它在 Ubuntu 18.04 上
猜你喜欢
  • 2018-12-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-13
  • 1970-01-01
  • 1970-01-01
  • 2018-03-08
  • 2016-06-28
相关资源
最近更新 更多