2016-08-09 85 views
1

Ich lebe nur meine Website. Website Link ist: http://cmexpertiseinfotech.in/pos1/ es funktioniert gut in localhost.My .htaccess-Datei ist,.htaccess funktioniert nicht im Codezeichner

<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 /pos 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ 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. 

    ErrorDocument 404 /index.php 
</IfModule> 

So in .htaccess Ich überprüfe, dass Rewrite-Modus aktivieren oder nicht? Aber es funktioniert nicht es zeigt 404 Seite. Ich habe meine .htaccess von Hauptverzeichnis wie folgt

,

Verzeichnisstruktur

-application 
    -.htaccess // this .htaccess has no content (Deny from all) 
-system 
-user_guide 
-public 
-.htaccess // this .htaccess's content is show above. 

base_url() ist, setzen:

$config['base_url'] = 'http://cmexpertiseinfotech.in/pos/'; 

EDIT: I nur Anfrage für Rewrite-Modus zu meinem Kopf aktivieren, aber es dauert 1-2 Tage, also bin ich versuchte eine andere Sache und ich entfernte gerade .htaccess Datei vom Projekt auf Wurzelverzeichnis.

Dies funktioniert. Bitte besuchen Sie diesen Link: http://cmexpertiseinfotech.in/pos/index.php/welcome/index.

aber das funktioniert nicht. http://cmexpertiseinfotech.in/pos/index.php/home/login.

Controller:

<?php if (! defined('BASEPATH')) exit('No direct script access allowed'); 

class Home extends CI_Controller { 

    public function login() 
    { 
     $this->load->view('login'); 
    } 
} 

Ausblick: login.php

<h1> Login </h1> 
+0

Es tut irgendwie, was auf der Dose gesagt wird. Sie fragen es, um ein 404 anzuzeigen, wenn mod_rewrite nicht installiert ist. Es zeigt eine 404. Warum schließen wir nicht, dass mod_rewrite nicht installiert ist? –

+0

danke für die Antwort. ich bin arm in .htaccess bruder also bitte leite mich, was ich hier tun soll? RewriteEngine On bedeutet, es ist aktiviert, was ist das Problem hier, ich habe nicht verstanden – Bhavin

+0

Aha! Ich verstehe die Verwirrung. Ich gebe meine Antwort in eine Antwort, damit ich es besser formatieren kann! –

Antwort

1

Sie vermischen zwei Fragen hier:

  1. mod_rewrite installiert/aktiviert?
  2. Ist die Rewrite Engine aktiviert/aktiv?

Diese Zeile überprüft, ob es installiert ist und geladen: <IfModule mod_rewrite.c>.

Nur wenn es geladen ist Apache dann einschalten mit: RewriteEngine On.

Da es scheint hier nicht installiert oder aktiviert zu sein, müssen Sie das lösen. Aber Sie (oder jemand) benötigen root-Rechte auf dem Server und dann müssen Sie die Apache-Konfigurationsdatei finden.

Ist das von einem Provider gehostet

Sie müssen sie fragen mod_rewrite

zu aktivieren, wenn Sie auf die Datei erhalten können

Es sei denn, Apache wurde sehr restriktiv installiert haben, sollten Sie in der Lage sein, die folgende Zeile zu finden:

#LoadModule rewrite_module modules/mod_rewrite.so

Aktivieren Sie es, indem Sie die # entfernen. Dann starte Apache neu.

Es ist schwierig, hier auf bestimmte Befehle einzugehen, da die Art der Installation von Apache sehr unterschiedlich ist.

+0

Ohk .. Danke für die Antwort Bruder. Ich überprüfe, ob ich Root-Berechtigung habe oder nicht. Ich habe Gastgeber Gator als Anbieter. Wie kann ich root Erlaubnis im Wirt gator überprüfen? – Bhavin

+0

Ich denke, das ist eine Frage für den Support-Desk von Host Gator. Niemand auf Stack Overflow ist mit ihnen verbunden. –

+0

Oh Bruder, ich hebe ein Ticket für Host-Gator über dieses Problem der Aktivierung des Rewrite-Modus. werden Sie darüber wissen, danke für die Antwort. – Bhavin