2016-08-01 10 views
0

Ich habe eine URL "http://10.21.50.66:8123/test/file/index.htm", die in Apache-Server gehostet wird. Ich möchte die URL auf nur "http://10.21.50.66:8123/" kürzen und ich schaffte es, indem Sie die Funktion Rewrite in httpd.conf verwenden. Wenn ich jedoch im Browser "http://10.21.50.66:8123/" eintippe, wird die URL umgeleitet und die URL des Browsers wird wieder auf die lange URL "http://10.21.50.66:8123/test/file/index.htm" zurückgesetzt. Was ich archivieren möchte ist, dass jedes Mal, wenn ich im Browser "http://10.21.50.66:8123" eintippe, der Browser "http://10.21.50.66:8123/test/file/index.htm" öffnet, aber die URL im Browser immer noch "http://10.21.50.66:8123/" anzeigt. Unten ist die Currecnt-Einstellung:Über Apache Rewrite-Funktion zum Kürzen der URL

Irgendwelche Ideen?

Vielen Dank im Voraus.

Antwort

1

Wenn Sie [R], die Apache kehrt Antwortcode verwenden 302 an den Browser (mit dem neuen Standort), wodurch die neue URL in der Adressleiste angezeigt wird.

Versuch:

RewriteEngine On 
RewriteRule ^/$ /test/file/index.htm [L] 
0

Sie müssen einen virtuellen Host in httpd.conf erstellen. Vielleicht haben Sie es in extras Ordner finden auch als httpd.vhosts.conf Sein etwas wie folgt aus:

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    ServerName test.com 
    ServerAlias www.test.com 
    DocumentRoot /var/www/test.com/public_html 
    ErrorLog ${APACHE_LOG_DIR}/error.log 
    CustomLog ${APACHE_LOG_DIR}/access.log combined 
</VirtualHost> 

Sie so etwas wie schreiben müssen:

<VirtualHost 10.21.50.66:8123> 
    ServerAdmin [email protected] 
    ServerName test.com 
    ServerAlias www.test.com 
    DocumentRoot [path to your test/file folder] 
    ErrorLog ${APACHE_LOG_DIR}/error.log 
    CustomLog ${APACHE_LOG_DIR}/access.log combined 
</VirtualHost>