Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我的路由在Apache的Laravel中返回错误_Php_Laravel_Apache_Manjaro - Fatal编程技术网

Php 我的路由在Apache的Laravel中返回错误

Php 我的路由在Apache的Laravel中返回错误,php,laravel,apache,manjaro,Php,Laravel,Apache,Manjaro,每当我尝试使用路由时,我都会得到“未找到对象”和“错误404”。我正在Manjaro/Arch上运行我的服务器(无论如何,在本地)。而且,这是我第一次使用Laravel 我的服务器使用Apache。它正在运行,因为我可以将Laravel页面从127.0.0.1/path/加载到/public/。我一直在为其他项目使用同一台服务器,没有出现任何问题 我甚至尝试将文档根更改为实际根,也就是说,我现在可以使用127.0.0.1运行 我在httpd.conf中将Allow override改为All,这

每当我尝试使用路由时,我都会得到“未找到对象”和“错误404”。我正在Manjaro/Arch上运行我的服务器(无论如何,在本地)。而且,这是我第一次使用Laravel

我的服务器使用Apache。它正在运行,因为我可以将Laravel页面从127.0.0.1/path/加载到/public/。我一直在为其他项目使用同一台服务器,没有出现任何问题

我甚至尝试将文档根更改为实际根,也就是说,我现在可以使用127.0.0.1运行

我在httpd.conf中将Allow override改为All,这似乎为99%的人解决了这个问题。我确保在.conf编辑之后重新启动了服务器

my web.php:(第一条路线是我为这个项目编写的唯一代码)

来自命令的输出
php artisan路由:list

+--------+----------+----------+------+---------+--------------+
| Domain | Method   | URI      | Name | Action  | Middleware   |
+--------+----------+----------+------+---------+--------------+
|        | GET|HEAD | /        |      | Closure | web          |
|        | GET|HEAD | api/user |      | Closure | api,auth:api |
|        | GET|HEAD | hello    |      | Closure | web          |
+--------+----------+----------+------+---------+--------------+
从我所看到的关于这个问题的其他解决方案来看,我的.htaccess是正确的:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>

    RewriteEngine On

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

    # Redirect Trailing Slashes If Not A Folder.
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    # Handle Front Controller.
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

选项-多视图-索引
重新启动发动机
#句柄授权头
RewriteCond%{HTTP:Authorization}。
重写规则。*-[E=HTTP\U授权:%{HTTP:AUTHORIZATION}]
#如果不是文件夹,则重定向尾部斜杠。
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_URI}(+)/$
重写规则^1[L,R=301]
#把手放在前控制器上。
重写cond%{REQUEST_FILENAME}-D
重写cond%{REQUEST_FILENAME}-F
重写规则^index.php[L]
这不是Laravel的问题,我认为如果我运行
php artisan serve
我可以使用路由查找,即127.0.0.1:8000/hello将在我的浏览器中打印hello world

必须添加:

LoadModule rewrite_module modules/mod_rewrite.so
到httpd.conf文件的末尾

[编辑]


出于某种原因,还必须授予某些文件的权限。(日志文件)。

当你使用Php artisan server时,你会得到什么?哦,好的,你使用的是什么laravel版本?laravel Framework 5.6.17你需要添加.htaccess文件,这是一个新的laravel 5.6,除非你不添加它,否则你会得到这个错误我有这个文件。
LoadModule rewrite_module modules/mod_rewrite.so