Laravel路由除了根目录全报404错误

Route::get('hello',function(){
     return 'Hello World!';
});

在laravel/app/Http/routes.php下添加上面的语句,然后再浏览器中使用localhost/laravel/public/hello,用Apache来运行,会报404错误,后来在网上查了资料,发现是URL重定向的问题,具体的解决方法如下:

1,php开启phpopenssl

2,在apache conf开启rewrite莫块
模块(#LoadModule rewrite_module modules/mod_rewrite.so)

3,在conf文件中找到directory 把AllowOverride None 改成 AllowOverride All

<Directory>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>
4,在laravel项目工程的public目录下添加.htaccess文件 ,文件内容如下

<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On

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

5、restart以下Apache服务器就没问题了。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容