2017-01-06 15 views
0

コードイグナイターのバージョンが異なる2つのプロジェクトがあります。最初のプロジェクトはCI 2.0.2であり、もう1つはCI 3.0です。私のマシンに3.0プロジェクトを実装すると、アドレスバーにプロジェクト名が表示されません。コードイグナイターのバージョン違いのエラーを修正するには?

例:私は初めてのプロジェクトを開いたときに

、アドレスは'http://localhost:8080/bsm/'です。しかし、ログインボタンをクリックしてログインフォームを開くと、アドレスは'http://localhost:8080/login'になります。それは'http://localhost:8080/bsm/login/'でなければなりません。

2.0.2プロジェクトで問題はありません。だから、3.0プロジェクトのアドレスバーを正しく表示させる方法は?

更新:

  • 私BASE_URLは、私は私のアンカーは<a href='/login'>Login</a>で気づく$config['base_url']= "http://localhost:8080/bsm/";
  • です。 href='bsm/login'に変更すると、アドレスは'http://localhost:8080/bsm/bsm/login/'になります。
  • 私の.htaccess
<IfModule mod_rewrite.c> 
    RewriteEngine On 
    # !IMPORTANT! Set your RewriteBase here and don't forget trailing and leading 
    # slashes. 
    # If your page resides at 
    # http://www.example.com/mypage/test1 
    # then use 
    # RewriteBase /mypage/test1/ 
    RewriteBase/
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ /bsm/index.php?/$1 [L] 
</IfModule> 

<IfModule !mod_rewrite.c> 
    # If we don't have mod_rewrite installed, all 404's 
    # can be sent to index.php, and everything works as normal. 
    # Submitted by: ElliotHaughin 

    ErrorDocument 404 /index.php 
</IfModule> 

答えて

0

base_urlを調整します。また、.htaccessをチェックして、サブフォルダがパスに追加されていることを確認し

Application > Config > config.php 

RewriteRule ^(.*)$ /bsm/index.php?/$1 [L] 

または使用:

RewriteBase /bsm 

あなたが、リンクについて説明し編集したので、このいずれかの操作を行います。私は `$の設定[ 'BASE_URL']を使用し

<a href='/bsm/login'>Login</a> 

またはこの

<a href='<?php print base_url(); ?>login'>Login</a> 
+0

を=" http:// localhost:8080/bsm/"; ' – Vahn

+0

@Vahnは私の答えを更新しました –

+0

それはまだ動作していません。アップデート – Vahn

関連する問題