Codeiginter:URL错误

时间:2015-06-02 17:54:06

标签: php .htaccess codeigniter

我的前网是 -

http://localhost/myProject/

admin url是 -

http://localhost/myProject/admin

它适用于Windows,但不适用于Ubuntu。

错误“未找到”。

在ubuntu中有效 -

首页正在运作 - http://localhost/myProject/

如果我在url中添加index.php,管理员登录页面正常工作 - http://localhost/myProject/index.php/admin

其他网页没有正常工作

我的.htaccess文件内容 -

RewriteEngine on
RewriteCond $1 !^(index\.php|assets|themes)
RewriteRule ^(.*)$ /myProject/index.php/$1 [L] 

我的Apache的mod-rewrite模块已启用。

1 个答案:

答案 0 :(得分:0)

我也在关注Centos中的类似问题,并按照以下教程进行了操作:

如何允许更改.htaccess文件:

使用------------------>打开httpd vi /etc/httpd/conf/httpd.conf

进入该文件后,找到以下部分,并将说明AllowOverride的行从None更改为All。该部分现在应如下所示:

<Directory /var/www/>
      Options Indexes FollowSymLinks MultiViews
         AllowOverride All
         Order allow,deny
           allow from all
</Directory>

保存并退出该文件后,重新启动apache。 .htacess文件现在可用于您的所有网站。

service httpd restart

.htaccess文件的内容:

<IfModule mod_rewrite.c>

    Options +FollowSymLinks -Indexes
    RewriteEngine on

    # NOTICE: If you get a 404 play with combinations of the following commented out lines
    #AllowOverride All
    #RewriteBase /

    # Restrict your site to only one domain
    #RewriteCond %{HTTP_HOST} !^www\.
    #RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteCond $1 !^(index\.php|images|fonts|js|images|robots\.txt|css)
    <IfModule mod_php5.c>
        RewriteRule ^(.*)$ index.php/$1 [L]
    </IfModule>

    <IfModule !mod_php5.c>
        RewriteRule ^(.*)$ index.php?/$1 [L]
    </IfModule>

</IfModule>

#prevent access to htaccess file
<Files .htaccess>
 order allow,deny
 deny from all
</Files>

#disable directory browsing
Options All -Indexes
IndexIgnore *