自从最近几个小时试图让我友好的网址工作以来,我一直在脱掉头发。 我有apache 2.4与php设置。该应用程序使用laravel 4构建
所以,当这个http://machinename:90/helpsystem/index.php/categories
有效时,不工作http://machinename:90/helpsystem/categories
我在apache的httpd.conf文件中启用了mod_rewrite模块 我还将它添加到httpd.conf
的别名模块部分ScriptAlias /helpsystem "c:/Apache24/htdocs/helpsystem/public"
public是laravel app的公共文件夹
我的目录部分看起来像这样
<Directory "c:/Apache24/htdocs/helpsystem/public">
Options Indexes Includes FollowSymLinks MultiViews
AllowOverride AuthConfig FileInfo
Order allow,deny
Allow from all
</Directory>
和.htaccess文件看起来像这样
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L]
</IfModule>
你能告诉我我做错了什么吗?
谢谢
答案 0 :(得分:1)
AllowOverride All应该在重新启动apache2
后解决您的问题<Directory c:/Apache24/htdocs/helpsystem/public/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
答案 1 :(得分:0)
查看Apache's upgrade guide from 2.2 to 2.4。
由于现在大多数Linux发行版(特别是Debian / Ubuntu)都发布了2.4+,你会看到这种情况发生了很多。我看到你在Windows上,所以它看起来像你碰巧使用的任何更新!具体地,
Order allow,deny
Allow from all
已替换为Require all granted
,因为Apache现在使用mod_authz_host。