2010-03-05 3 views
1

codeigniter를 사용하고 있습니다.url이 메뉴 및 로고 아래의 상자를 이동 한 후 후행 슬래시 추가

내 제품 페이지에는 보유한 모든 제품이 표시되며 사용자는 각 제품 _ 이름을 클릭하여 특정 제품에 대한 자세한 정보를 얻을 수 있습니다. 그래서, 나는 제품을 클래스로 product_name을 제품 클래스의 함수로 선언했다. 그래서 URL www.company.com/products/product_name을 얻을 수 있었다.

내가 www.company.com/products으로 갈 때 모든 것은 괜찮지 만 후행 슬래시를 추가하면 www.company.com/products/ 로고와 메뉴 아래에있는 내 창이 로고와 메뉴를 모두 숨기는 것처럼 보입니다. 내가 www.company.com/products/product_name에 갈 때도 마찬가지입니다.

후행 슬래시를 추가하거나 product_name 페이지로 이동할 때 아래 창이 닫히지 않도록하려면 어떻게해야합니까?

도움을 주시면 감사하겠습니다.

답변

2

문제는 이미지의 상대 경로를 지정했기 때문입니다. 당신은 그것들을 절대적으로 만들거나 적어도 현재 위치에 상대적으로 만들 필요가 있습니다.

<img src="images/obsia.png"> 

<img src="/images/obsia.png"> 
or 
<img src="http://www.obsia.com/images/obsia.png"> 

에 대한 귀하의 문제가 해결 될 것입니다 : 그것은 당신이에서 이미지 경로를 변경하는 경우, 말을하는 것입니다.

이유는 이미지 경로가 기본 URL에 의해 결정되기 때문입니다. http://www.obsia.com 또는 http://www.obsia.com/products 일 때 기본 URL은 http://www.obsia.com입니다.

브라우저에 images/obsia.pnghttp://www.obsia.com/image/obsia.png으로 렌더링되며 서버는 wwwroot/images/obsia.png으로 해석하고 상대 링크가 작동합니다.

그러나 http://www.obsia.com/products/ 기지 URL을 할 경우 http://www.obsia.com/products하고 http://www.obsia.com/images/obsia.png에서 http://www.obsia.com/products/images/obsia.png에 대한 이미지 변화에 대한 상대 경로. 서버가 다음과 같이 이것을 해석합니다. 서버가 유효한 경로가 아닌 wwwroot/images/products/obsia.png으로 해석합니다. 서버가 404 이미지를 반환합니다.

Firebug의 .Net 패널을 사용하면 이것을 볼 수 있습니다. 로고 요청은 다음을 반환합니다.

GET obsia.png 
http://www.obsia.com/products/images/obsia.png 

404 Not Found 

obsia.com 

539 B 
+0

사파리에 깨진 링크가 표시됩니다. 파이어 폭스에서 그냥 dsnt 쇼. 내가 한 제안을 시도했지만 작동시키지 못했습니다. 또한, 나는 www.obsia.com/products에 대해서도 똑같은 일을했으며 잘 작동하는 것 같습니다. 후행 슬래시가 스타일을 변경하는 이유를 모르십니까? 나는 창문을 꺼내 창문이 원래 있었던 로고와 메뉴를 모두 보았습니다. 그래서 그것은 그것을 숨기기 위해 움직이는 것처럼 보입니다 (나는 사파리에서 어떤 일이 일어나는지 알아야합니다). – strangeloops

+0

strangeloops ... 명확히하려고 대답을 업데이트했습니다. 이 페이지는 현재 5 개의 주요 브라우저에서 작동하지 않습니다 *. (IE, 파이어 폭스, 사파리, 오페라, 크롬) –

+0

오하이오는 기다리는 것이 좋습니다. 왜냐하면 이미지가 header_view.php에있는 www.obsia.com/images/obsia.png에 있기 때문입니다. 이미지는 www.obsia.com/products에 표시되지만 www.obsia.com/products/에는 표시되지 않습니까? 어떤 힌트 든 이제. BTW는 저와 함께 일해 주셔서 감사합니다. – strangeloops

관련 문제