2016-06-20 2 views
0

다시 쓰기 규칙을 적용 할 수 없습니다. 나는 자습서를 읽었지만, 루트 인덱스를 호출하지 않을 때 어떻게 파일 이름 앞에 param을 사용할 수 있는지 명확하게 설명하지는 않습니다. 내 인덱스 규칙이 다른 모든 인덱스 규칙보다 우선하는 것 같습니다.htaccess는 파일 이름 앞에 param이있는 규칙을 다시 작성합니다.

나는 내가 원하는대로

www.mawebsite.com/en/tag/karate = www.mawebsite.com?lang=en&tag=karate 

이 부분은 잘 작동하고 내 갤러리로드됩니다되는 index.php 갈 것, 내 인덱스가 특정 태그에 따라 갤러리를 표시하려면이 방법을 찾고 링크 그래서 모든 종류를 원한다. 하지만 다른 파일을 사용할 수 있기를 원합니다.

www.mawebsite.com/en/video/videoid/video-title = www.mawebsite.com/video.php?lang=en&guid=videoid&title=video-title. 

여기 내 htaccess 파일의 모습입니다.

편집 내 파일 : 나는이 작동하지 않습니다 video.php에가는 시도

AddCharset UTF-8 .html 
ErrorDocument 404 /notfound.html 


RewriteBase/
RewriteEngine on 
RewriteRule ^(\w\w)/(video)/([^/]+)/([^/]+)/?$ /$2.php?lang=$1&guid=$3&title=$4 [L] 
RewriteRule ^fr/video/guid/title$ video.php [L] 
RewriteRule fr/tag/([^/]+/.+)$ /?=$1 [L,QSA] 
#RewriteRule ^([^/]+)$ index.php?p=$1 [L] 

Redirect 301 /css/file.css /css/file.php 

아무것도.

답변

0

는 다음과 같은 규칙을 활용 해 : 재 작성 규칙의

RewriteEngine On 
RewriteRule ^(\w\w)/(video)/([^/]+)/([^/]+)/?$ /$2.php?lang=$1&guid=$3&title=$4 [L] 

순서는 매우 중요한 역할을한다. 먼저보다 구체적인 규칙을 계속 :

AddCharset UTF-8 .html 
ErrorDocument 404 /notfound.html 

Redirect 301 /css/file.css /css/file.php 

RewriteBase/
RewriteEngine on 
RewriteRule ^([^/]+)/?$ index.php?p=$1 [L] 
RewriteRule ^(\w\w)/(tag)/([^/]+)/?$ /?lang=$1&$2=$3 [L,QSA] 
RewriteRule ^(\w\w)/(video)/([^/]+)/([^/]+)/?$ /$2.php?lang=$1&guid=$3&title=$4 [L] 
+0

감사하지만 인덱스에 남아, 내 마지막 규칙은 당신이 – Vakarm

+0

@Vakarm을 제시 한 당신이 질문에 전체 htaccess로 파일을 넣을 수 무시 보인다? – hjpotter92

+0

덕분에 끝났습니다 :) – Vakarm