我使用codeigniter处理PHP项目,我从本地删除了index.php,这是我的.htaccess
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$1 [PT,L]
当我上传项目时,在线路线根本不起作用,我需要用普通网址而不是路由设置index.php!
例如而不是写index
我必须写
index.php/product_management_controller/index
如果我写索引,即使我更新路由以包含index.php,它也不起作用!!这意味着路线也不起作用!
我目前的路线是
$route['index'] = "product_management_controller/index";
以下是我在config.php文件中设置的一些内容:
$config['base_url'] = '';
$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';
解决方案是什么!!
它在本地正常工作!!
答案 0 :(得分:0)
您托管的服务器需要允许.htaccess
个文件,您需要在Apache配置中添加:
AllowOverride All
到你的Apache配置。然后重启Apache服务器。
您也可以尝试
Options +FollowSymLinks -MultiViews
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$1 [PT,L]
答案 1 :(得分:0)
有一个文档可以从codeigniter上的url中删除index.php https://ellislab.com/codeigniter/user-guide/general/urls.html
顺便说一下,你根据评论在godaddy共享服务器上,你无法访问apache配置文件,但好消息是你不必担心重写模式已经开启默认情况下。 :)