2016-05-22 11 views
0

Mein Code arbeitet an der Produktion, aber es funktioniert nicht in localhost. Ich denke, es ist wegen URL-Umleitung in Htaccess-Datei getan.Produktionscode funktioniert nicht in localhost. ist es wegen htaccess?

wenn ich öffne localhost/project_1.0/index.php Seite öffnet sich, aber Bilder werden nicht angezeigt. Im Quellcode beim Anklicken versucht es von localhost/images/e1.jpg zu laden, aber es sollte localhost/project_1.0/images/e1.jpg sein.

Das gleiche gilt für CSS und Javascript-Datei auch.

meine .htaccess-Datei Code:

RewriteEngine on 
RewriteBase/

#Force non-www: 
RewriteCond %{HTTP_HOST} www.(.*)$ [NC] 
RewriteRule ^(.*)$ http://%1/$1 [R=301,L] 

RewriteRule ^index\.php$/[NC,R=301,L] 
+1

mehr wie die eingebettete Links-Sounds auf die Bilder absolute Pfade verwenden, so Pfade mit einem führenden Schrägstrich ('/'). Wenn dies der Fall ist, müssen Sie die Umleitungsregeln für Ihr lokales System anpassen, oder Sie sollten die Anwendung vorzugsweise so konfigurieren, dass sie relative Links verwendet. – arkascha

+0

Ich schlage vor, dass Sie einen solchen Link zu der obigen Frage hinzufügen, wie Sie es in der HTML-Seite in Ihrem Browser geladen sehen können. Es gibt einen 'edit' Button unter deiner Frage dafür. Vielen Dank! – arkascha

Antwort

0

Für dieses Problem habe ich so zu tun,

<?php 
$host = $_SERVER['HTTP_HOST']; 
if($host == 'something.com' || $host == 'www.something.com'){ 
    $base = 'http://'.$host.'/'; 
}else{ 
    $base = 'http://'.$host.'/local_directory/'; 
} 
?> 
<html> 
<head> 
<base href="<?=$base?>" /> 
</head> 
<body> 

</body> 
</html>