【发布时间】:2018-11-16 01:01:58
【问题描述】:
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]
在我的.htaccess 文件中得到了这个(如https://www.codeigniter.com/user_guide/general/urls.html 中所述),虚拟主机的apache 设置如下所示:
<VirtualHost *:80>
ServerName fitness.local
ServerAdmin webmaster@localhost
ServerAlias www.fitness.local
DocumentRoot /var/www/blast
<Directory /var/www/blast>
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
然而,如果我想去http://fitness.local/events 它不工作,但http://fitness.local/index.php/events 工作。我已经为 apache 启用了 mod rewrite,所以这也包括在内。
我该如何解决这个问题?
【问题讨论】:
-
您是否删除了配置中的“index.php”?
-
@DamienPirsy 是的,我做到了,但这并没有解决问题。
-
启用mod_rewrite后你重启服务器了吗?
-
@MuhammadRashid 是的,我这样做了,但也没有用。
-
尝试在您的 config.php 中设置
$config['uri_protocol'] = 'AUTO';
标签: php apache .htaccess codeigniter mod-rewrite