在服务器迁移的过程中遇到一个问题,因为服务器端用的是codeigniter的框架,在迁移后由于index.php的原因无法访问了。网上有横多的解决方法,但是针对我的这个环境的并不多。针对这个问题,只要处理好两点就好了。
开启apache2 的rewrite模块
a2enmod rewrite
这里是启动rewrite_mod
如果是手动开启的话,就是建立一个软连接
ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load
然后是修改
vim /etc/apache2/sites-enabled/000-default.conf
<Directory "/var/www/html">
AllowOverride All
</Directory>
注意上面的文件目录要改成自己的站点的目录,接下来就是重启apache服务器
service apache2 restart
修改.htaccess文件
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .
上面的代码简单的说,就是开启重写,如果请求的链接地址,没有目录,也没有文件,就执行重写规则。
以上方法只针对ubuntu 14.04,apache2 的环境,其他的环境下可能不同,请注意甄别。