Links werden falsch wiedergegeben

13/02/2009 - 09:31 von Lupus Goebel | Report spam
Hallöschen,


ich bin mir unsicher ob mein Problem eine Expression Web2 Ursache hat
oder ein Dotnet.asp Scherz. Daher poste ich in

<news:microsoft.public.de.expression.web> und
<news:microsoft.public.de.german.entwickler.dotnet.asp>

und bitte das richtige Followup zu setzen.

Ich bin kurz vor dem Durchdrehen mit diesem Code:

\\\
<%
strURL = "http://" & Request.ServerVariables("SERVER_NAME") &
Request.ServerVariables("URL")
if Request.ServerVariables("SERVER_NAME") = "localhost" then
strRoot = "localhost/immo2"
else
strRoot = ""
end if
%>
<p>
<b>Server_Name:</b> <%= Request.ServerVariables("SERVER_NAME") %><br />
<b>URL-Pfad:</b> <% = Request.ServerVariables("URL") %><br />
<b>URL:</b> <%= Request.ServerVariables("SERVER_NAME") &
Request.ServerVariables("URL") %><br />
<b>strName:</b> <% = strName %><br />
<b>strRoot:</b> <% = strRoot %> der <a href="localhost/immo2">Link</a>:
</p>

<p>
<%
Response.Write("[ <a title=""Startseite""")
Response.Write(" href=""" & strRoot & "/"">Start</a> ] " & vbCrLf)

If strName = "impressum" Then
Response.Write("[ Impressum ] " & vbCrLf)
Else
Response.Write("[ <a title=""Impressum/Kontakt""")
Response.Write(" href=""" & strRoot &
"/impressum/"">Impressum</a> ] " & vbCrLf)
End If
Response.Write(vbCrLf)
strURL = Replace(strURL, "index.aspx", "")
strURL = Replace(strURL, "Index.aspx", "")

Response.Write("Sie sind hier: [ <a title=""Aktuelle URL"" ")
Response.Write(" href=""" & strURL & """>")
Response.Write(strURL & ("</a> ]") & vbCrLf)
%>
///

Wenn ich auf localhost dann den Link für Start klicke, erhalte ich
folgende URL: http://localhost/immo2/localhost/immo2/

Schaue ich in den Quelltext steht da aber:
[ <a title=" " href="localhost/immo2/">Start</a> ]

Veröffentliche ich die Seiten auf meinem webserver im Internet, dann ist
alles ok.

Was ist denn daran falsch? Vorher, als alles noch eine ASP-Seite war
ging es doch auch, aber in einer ASPX-Seite nimmer?

MfG - Lupus Goebel
Der Sumpf- und Morasthobbybastler und Anfaenger mit
Wissensdurst (http://www.lupusdw.de http://foto.lupusdw.de)
 

Lesen sie die antworten

#1 Stefan Falz [MVP]
13/02/2009 - 09:53 | Warnen spam
Hallo Lupus,

"Lupus Goebel" schrieb

ich bin mir unsicher ob mein Problem eine Expression Web2 Ursache hat
oder ein Dotnet.asp Scherz.



Gar keins von beiden. Das ist weder ASP.NET (zumindest nicht wirklich)
noch hat das was mit Expression zu tun. Eigentlich wàre es wohl eher
in der Classic ASP Newsgroup passend aber ich lasse es mal ohne F'up
so, wie Du es gepostet hast.

Ich bin kurz vor dem Durchdrehen mit diesem Code:



Glaub ich. Warum nutzt Du nicht ASP.NET sondern Classic ASP Code in
einer ASP.NET Anwendung?

if Request.ServerVariables("SERVER_NAME") = "localhost" then
strRoot = "localhost/immo2"
...
Response.Write("[ <a title=""Startseite""")
Response.Write(" href=""" & strRoot & "/"">Start</a> ] " & vbCrLf)



Was soll da auch anderes rauskommen als href="localhost/immo2/"? So gibst
Du es ja oben an. Schreib halt http://localhost/immo2/, dann klappt das
auch.

Wenn ich auf localhost dann den Link für Start klicke, erhalte ich
folgende URL: http://localhost/immo2/localhost/immo2/



siehe oben, ist ja auch von Dir so angegeben.

Schaue ich in den Quelltext steht da aber:
[ <a title=" " href="localhost/immo2/">Start</a> ]



Du befindest Du schon in http://localhost/immo2/ und setzt einen Verweis
auf das Unterverzeichnis localhost/immo2, da kann nur das rauskommen.
Du hast http:// vergessen.

Was ist denn daran falsch? Vorher, als alles noch eine ASP-Seite war
ging es doch auch, aber in einer ASPX-Seite nimmer?



Das glaub ich eher nicht :)

Tschau, Stefan
Microsoft MVP - Visual Developer ASP/ASP.NET
http://www.asp-solutions.de/ - Consulting, Development
http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community

Ähnliche fragen