参见英文答案 >
How to remove “index.php” in codeigniter’s path25个
我知道这个问题已经被问了,我试过所有这些,但仍然无法从url中删除index.php.
这是我的细节
我知道这个问题已经被问了,我试过所有这些,但仍然无法从url中删除index.php.
这是我的细节
Ubuntu 12.10 PHP : 5.4.6 Mod_rewrite in on CI verson: 2.1
看起来像:
RewriteEngine On RewriteBase /projectname RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$index.php/$1 [L]
我也看下面的链接,但没有运气..
Cannot remove index.php from url CI based site
How to remove “index.php” in codeigniter’s path
我的“/ etc / apache2 / sites-available / default”如下所示:
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug,info,notice,warn,error,crit,# alert,emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
任何帮助赞赏!
在application / config / config.php中更改:
$config['index_page'] = 'index.php';
至:
$config['index_page'] = '';
每次更改apache配置文件时,都需要重新加载apache.
sudo /etc/init.d/apache2 reload
要么:
sudo service apache2 reload
要么:
sudo /etc/init.d/httpd reload
(或任何与您的平台相当的命令)
为什么值得,这里是我的.htaccess
RewriteEngine on RewriteBase / RewriteCond $1 !^(index\.php|static|robots\.txt|favicon\.ico|uploads|googlexxxxxxxx\.html|mobile.html) RewriteRule ^(.*)$index.php/$1 [L]
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。