我正在尝试重用一个php文件进行分配。 所以index.php中的以下行
require '.././library/Slim/Slim.php';
给我错误信息:
未找到404页面
找不到您要查找的页面。检查地址栏以确保您的网址拼写正确。如果一切都失败了,您可以访问我们的主页,链接如下。
文件夹库相对于文件index.php向后一步。 该文件存在,我相信路径是正确的,因为当我将行更改为
require '.././library/Slim/Slim2.php'; //file Slim2.php not present
我收到此错误消息
警告:require(.././ library / Slim / Slim.php2):无法打开流: 在......中没有该文件或目录 /Applications/XAMPP/xamppfiles/htdocs/Julio/Temperature/api/index.php 在第6行
致命错误:require():需要打开失败 ” .././library/Slim/Slim.php2' (include_path ='。:/ Applications / XAMPP / xamppfiles / lib / php')in /Applications/XAMPP/xamppfiles/htdocs/Julio/Temperature/api/index.php 在第6行
怎么了? 使用MAC
答案 0 :(得分:1)
要扩展我的评论,您收到的错误消息是Slim传递的错误消息,因为它无法识别您正在点击的端点。
例如,如果您使用以下命令创建了新的Slim App实例
$app = new \Slim\App;
$app->get('/', function ($request, $response, $args) {
// Logic for the root path here.
}
以上不是最好的方法,实际上你想要将路由提取到自己的文件。
可以在此处找到完整的Slim文档:http://www.slimframework.com/docs/
编辑:刚刚注意到你正在使用Slim2,我上面的例子都在Slim3中,所以存在一些差异,但是当前404的解决方案应该是相同的。您需要创建一个路径来处理要查看的页面,并确保正确设置前端控制器。
编辑2:快速写出以下内容,看看我是否可以帮助你了,此刻非常忙碌,所以我没有足够的时间进入这个更详细的信息。您还应该知道以下示例设置是在Slim3中完成的,并且非常基本。将有更多的最佳方式来设置您的文件夹结构等,但这应该给你一个起点。我建议的主要是研究一些Slim Projects和Slim文档本身,以便很好地掌握微框架的工作原理。
|- public
|- index.php
|- .htaccess
|- src
|- ProjectName
|- Routes
|- example.php
|- bootstrap.php
|- vendor
<强>的index.php 强>
<?php
// Pull in our bootstrap file.
require_once '../src/ProjectName/bootstrap.php';
$app->run();
<强>的.htaccess 强>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME}% !-f
RewriteCond %{REQUEST_FILENAME}% !-d
RewriteRule ^ index.php [QSA,L]
<强> bootstrap.php中强>
<?php
require_once '../vendor/autoload.php';
$app = new \Slim\App();
require_once 'Routes.php';
<强>使用example.php 强>
$app->get('/example/{name}', function ($request, $response, $args) {
echo 'Hello ' . $args['name'];
}
答案 1 :(得分:0)
由于以下Apache配置AllowOverride none
,请确保Apache不会忽略.htaccess文件。检查您的虚拟主机配置,并添加/修改到AllowOverride All
:
<Directory /var/www/site/example.com/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>