2015-01-04 4 views
2

내 사례와 관련된 많은 샘플/튜토리얼을 보았지만 작동 코드를 사용할 때 URL에 아무런 변화가 없습니다..htaccess는 웹 서버에서 하이픈이 작동하지 않음을 나타냅니다.

나는 /이 링크 예/LMP/속성/jumeirah_parklarge_legacy_4brms/V0004221/예/LMP/재산/주 메이라 - parklarge - 레거시 4brms을 V0004221/

나는 또한 http://htaccess.madewithlove.be/에 htaccess로 코드를 테스트하려면 그리고 그것은 나에게 맞는 출력 URL을 제공하지만 내 로컬 서버에서 테스트 할 때 출력 URL로 리디렉션되지 않습니다.

여기 내 코드입니다,

<IfModule mod_rewrite.c> 
    Options +FollowSymlinks 
    RewriteEngine on 
    RewriteBase /lmp 


    RewriteRule ^lmp/property([^_]*)_([^_]*)_([^_]*)_([^_]*)_([^_]*)_([^_]*)_(.*)$ lmp/property$1-$2-$3-$4-$5-$6-$7 [L,NC,E=underscores:Yes] 
    RewriteRule ^lmp/property([^_]*)_([^_]*)_([^_]*)_([^_]*)_([^_]*)_(.*)$ lmp/property$1-$2-$3-$4-$5-$6 [L,NC,E=underscores:Yes] 
    RewriteRule ^lmp/property([^_]*)_([^_]*)_([^_]*)_([^_]*)_(.*)$ lmp/property$1-$2-$3-$4-$5 [L,NC,E=underscores:Yes] 
    RewriteRule ^lmp/property([^_]*)_([^_]*)_([^_]*)_(.*)$ lmp/property$1-$2-$3-$4 [L,NC,E=underscores:Yes] 
    RewriteRule ^lmp/property([^_]*)_([^_]*)_(.*)$ lmp/property$1-$2-$3 [L,NC,E=underscores:Yes] 
    RewriteRule ^lmp/property([^_]*)_(.*)$ lmp/property$1-$2 [L,NC,E=underscores:Yes] 

    RewriteCond %{ENV:REDIRECT_underscores} ^Yes$ 
    RewriteRule ^([^_]+)$ lmp/$1 [R,L] 



    RewriteCond %{REQUEST_URI} ^../system.* 
    RewriteRule ^(.*)$ /index.php?/$1 [L] 

    #When your application folder isn't in the system folder 
    #This snippet prevents user access to the application folder 
    #Submitted by: Fabdrol 
    #Rename 'application' to your applications folder name. 

    RewriteCond %{REQUEST_URI} ^../application.* 
    RewriteRule ^(.*)$ /index.php?/$1 [L] 

    #Checks to see if the user is attempting to access a valid file, 
    #such as an image or css document, if this isn't true it sends the 
    #request to index.php 

    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php?/$1 [L] 

    RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s(.*)/index.php/?([^\ \?]*) [NC] 
    RewriteRule^%1/%2 [R=301,L] 

</IfModule> 
<IfModule !mod_rewrite.c> 

    ErrorDocument 404 /home 
</IfModule> 

답변

0

당신은 사용할 수 있습니다

<IfModule mod_rewrite.c> 
    Options +FollowSymlinks 
    RewriteEngine on 
    RewriteBase /lmp/ 

    # recursive rule to replace _ by - from REQUEST_URI 
    RewriteRule ^(property)/([^_]*)_+([^_]*_.*)$ $1/$2-$3 [L,NC] 
    RewriteRule ^(property)/([^_]*)_([^_]*)$ $1/$2-$3 [L,R=302,NC,NE] 

    RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s(.*)/index.php/?([^\ \?]*) [NC] 
    RewriteRule^%1/%2 [R=301,L] 

    RewriteCond %{REQUEST_URI} ^../system.* 
    RewriteRule ^(.*)$ /index.php?/$1 [L] 

    #When your application folder isn't in the system folder 
    #This snippet prevents user access to the application folder 
    #Submitted by: Fabdrol 
    #Rename 'application' to your applications folder name. 

    RewriteCond %{REQUEST_URI} ^../application.* 
    RewriteRule ^(.*)$ /index.php?/$1 [L] 

    #Checks to see if the user is attempting to access a valid file, 
    #such as an image or css document, if this isn't true it sends the 
    #request to index.php 

    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php?/$1 [L] 

</IfModule> 

<IfModule !mod_rewrite.c> 
    ErrorDocument 404 /home 
</IfModule> 
관련 문제