2012-01-23 3 views
10

linux, php, mysql 및 apache에서 .htaccess (mod-rewrite가 비활성화 됨)를 허용하지 않는 호스팅 회사가 있습니다.램프에 mod-rewrite가없는 seo/canonicals URL 만들기

나는 내 사이트에 대한 더 많은 서구/표준이되기를 바랍니다. 내가 지금 가지고 htaccess로와 모드 - 재 작성을 사용하지 않고

/home 
/flowers/12 
/flowers/deco/texture/red 

:

/index.php 
/flowers.php?id=41 
/flowers.php?type=deco&mode=texture&color=red 
etc... 

같은 것을 작성하는 방법이? 아니면 다른 호스팅을 찾아야합니까?

+7

모드 재 작성을 사용하도록 설정하려면 호스팅 회사에 지원 티켓을 여는 것이 좋습니다. –

+2

@BookOfZeus 동의합니다. 모드 재 작성이 가능해야합니다. 그런 식으로 쉽게 –

+2

더 나은 호스트로 전환하십시오. –

답변

7

예를 들어 위키 백과 같은 사용자 지정 방법을 사용하지 않으면 그렇게 할 수 없습니다. @BookOfZeus가 말했듯이, 이렇게하려면 다시 쓰는 모드를 활성화해야합니다. 나는 그것을 추천 할 것이다!

지금, 여기 당신이 할 수있는 작업은 다음과 같습니다 당신이 설치 URL을 읽고 다음을 구문 분석 할 수있는 스크립트를

.

당신이 할 수 있습니다 :

/index.php/page1/page2.html

그렇게 스크립트가 읽을 것이다 $ _SERVER [ 'PATH_INFO'] 다음에하게 분할 '/' . 그래서 당신은 배열이 될 것이고, 그런 다음 로직을 사용하여 내용을 분리 할 수 ​​있습니다.

당신이,이를 추가하여 PHP를 숨기려고 할 수있는 경우 :

<Files index> 
ForceType application/x-httpd-php 
</Files> 

은 그래서 당신은 같은 URL로 endup됩니다

소스 /index/page1/page2.html :

http://webarto.com/50/php-seo-url-function

http://www.daniweb.com/web-development/php/threads/95933

+0

은 PHP에서 인덱스를 강제 실행하는 것과 같습니다. – rcs20