我有一个几乎没有更改的全新安装,它不会接受任何新路由。我已尝试过虚拟主机文件的多个内容,主要是我在其他网站上找到但没有任何效果。
我可以获得默认值,但没有其他路线。
这样可行:
Route::get('/', function()
{
return View::make('hello');
});
但这不是:
Route::get('test', function()
{
return 'Hello;
});
现在我有一个apache的conf
文件,如下所示:
<VirtualHost *:80>
#Host Name
ServerAdmin webmaster@localhost
ServerName example.com
ServerAlias www.example.com
DocumentRoot /path/to/our/public
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /path/to/our/public>
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
</Directory>
</VirtualHost>
我访问该网站没有问题,它加载,我从laravel得到欢迎页面,但我不能做任何其他路由或任何东西。权限都可以,我可以将此路由更改为我想要的任何内容。
答案 0 :(得分:3)
我可以通过更改/var/www in my /etc/apache2/apache2.conf
文件规则的AllowOverride来使其正常工作。
原文:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride none
Require all granted
</Directory>
新:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
答案 1 :(得分:1)
我可以通过以下问题中的主题来修复错误。
.haccess
文件中的this link on the ReWrite engine属性以及this linke中关于更改{A httpd.conf
文件(apache2.conf
在我的Apaache / Ubuntu系统上)的最重要属性。