在Apache2.2.16中配置CodeIgniter2.0,去掉index.php实现简洁链接

    技术2025-01-16  16

    参考文章

    1、codeigniter:去掉 URL 中的 index.php

    2、 国外十大最流行PHP框架排名

    3、你用得最顺手的框架。

    4、CodeIgniter 教程资源索引

    5、CodeIgniter 入门与简单应用

     

    一、首先启用Apache下的rewrite,方式是创建一个软链接

    cd /etc/apache2/mods-enabled/

    sudo ln -s ../mods-availabe/rewrite.load rewrite.load

    二、修改/etc/apache2/sites-availabe/default,定义Web站点的主目录

    <VirtualHost *:80>     ServerAdmin webmaster@localhost     DocumentRoot /home/user/www     <Directory />         Options FollowSymLinks         AllowOverride None     </Directory>     <Directory /home/user/www/>         Options Indexes FollowSymLinks MultiViews         AllowOverride None         Order allow,deny         allow from all     </Directory>

    三、修改/etc/apache2/httpd.conf,重定向,通过别名ci,来代替实际路径

    Alias /ci/ "/home/user/www/codeigniter/" <Directory "/home/user/www/codeigniter/">     Options Indexes FollowSymLinks MultiViews     AllowOverride All     Order allow,deny     allow from all     RewriteEngine on     RewriteCond $1 !^(index/.php|images|robots/.txt)     RewriteRule ^(.*)$ /ci/index.php/$1 [L] </Directory>

    默认情况下 httpd.conf 是空的,上面这个东西,写到 default中也行。

    四、设置CodeIgniter的配置文件config.php

    ~/user/www/codeigniter/application/config/config.php

    $config['base_url']    = "http://ubuntu/ci/" ; $config['index_page'] = "" ;//去掉index.php

    五、查看效果

    http://localhost/ci/ ----ci主页

    http://localhost/ci/index ------ci的index控制器 或 http://localhost/ci/c2 -----c2控制器

    用到的linux命令

    查看Apache版本号

    apache2 -v

    重启Apache

    sudo /etc/init.d/apache2 restart

    最新回复(0)