【发布时间】:2017-01-28 14:10:42
【问题描述】:
我看了很多例子,尝试了很多解决方案都没有成功! 我正在尝试使用 apache 将我的项目放到 Ubuntu 服务器上。
一切正常:
"/MYEXAMPLE/public/index.php/dashboard"
但我想要:
"/MYEXAMPLE/public/dashboard"
还有问题!
“在此服务器上找不到请求的 URL /MYEXAMPLE/public/dashboard。”
我的 apache 服务器 有 de mod_rewrite。
我的项目文件夹是:
- MYEXAMPLE
--------- server.php
--------- public
----------------.htaccess.php
----------------.index.php
---------------- views
我的.htaccess.php:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
索引.PHP:
<?php //
require __DIR__ . '/../bootstrap/autoload.php';
$app = require_once __DIR__ . '/../bootstrap/app.php';
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
$response = $kernel->handle(
$request = Illuminate\Http\Request::capture()
);
$response->send();
$kernel->terminate($request, $response);
我不想从公共文件夹中删除我的视图!当我使用 wamp 服务器时,一切正常,我不需要在 URL 处使用 index.php。现在我正在尝试使用 Ubuntu 服务器,但是 URL 不起作用,因为我需要 index.php
其他例子:如果我访问
/MYEXAMPLE/public/
或
/MYEXAMPLE/public/index.php
它会按我的意愿进入主页。当我试图切换到其他页面时,他的问题!
有解决问题的建议吗?为什么使用 wamp 运行一切正常,而当我尝试使用 Ubuntu 服务器时,我需要 URL 中的 index.php?
提前致谢
【问题讨论】:
-
Laravel 的文档根目录应该是公用文件夹。阅读安装说明。
标签: php .htaccess laravel mod-rewrite laravel-5.2