在子目录中设置phroute

时间:2016-05-15 08:12:11

标签: php .htaccess

我试图在子目录中设置phroute。这是我到目前为止所做的工作,但没有成功。

首先。在我选择致电framework的文件夹中,我运行了composer require phroute/phroute

二。然后我创建了一个/public文件夹。所以现在在文件夹framework中我有:

composer.json
composer.lock
public
vendor

第三。在文件夹/public中,触摸index.php并添加以下内容:

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

use Phroute\Phroute\RouteCollector;

$router = new RouteCollector();

$router->get('/', function(){ 
    return 'Hello, 

四。在子文件夹framework中,触摸.htaccess并添加以下内容:

RewriteEngine On
RewriteBase /framework/

RewriteCond %{THE_REQUEST} /public/([^\s?]*) [NC]
RewriteRule ^ %1 [L,NE,R=302]

RewriteRule ^((?!public/).*)$ public/$1 [L,NC]

所以,当我点击http://localhost:8888/framework/时,它只是空白,没有任何错误。当index.php中只有一些lorum ipsum时,会显示它。

文件夹结构如下:

├── composer.json
├── composer.lock
├── public
│   └── index.php
└── vendor
    ├── autoload.php
    ├── bin
    ├── composer
    │   ├── ClassLoader.php
    │   ├── LICENSE
    │   ├── autoload_classmap.php
    │   ├── autoload_namespaces.php
    │   ├── autoload_psr4.php
    │   ├── autoload_real.php
    │   ├── autoload_static.php
    │   └── installed.json
    └── phroute
        └── phroute
            ├── LICENSE
            ├── README.md
            ├── benchmark
            │   └── simple.php
            ├── composer.json
            ├── examples
            │   ├── route_filters.php
            │   ├── route_prefix.php
            │   ├── route_prefix_and_filter_nested.php
            │   └── simple.php
            ├── phpunit.xml
            ├── src
            │   └── Phroute
            │       ├── Dispatcher.php
            │       ├── Exception
            │       │   ├── BadRouteException.php
            │       │   ├── HttpException.php
            │       │   ├── HttpMethodNotAllowedException.php
            │       │   └── HttpRouteNotFoundException.php
            │       ├── HandlerResolver.php
            │       ├── HandlerResolverInterface.php
            │       ├── Route.php
            │       ├── RouteCollector.php
            │       ├── RouteDataArray.php
            │       ├── RouteDataInterface.php
            │       ├── RouteDataProviderInterface.php
            │       └── RouteParser.php
            └── test
                └── Dispatcher
                    └── DispatcherTest.php

我认为它可能与.htaccess文件有关。但我不知道我做错了什么。

1 个答案:

答案 0 :(得分:0)

您需要添加以下内容

Case
我也遇到了这个问题。此致