스스로 처리 할 수없는 성숙한 질문으로 도움을 요청해야합니다. 그래서 ...htaccess 제거 index.php 루트 폴더
내가 설정 한 htaccess로 파일 :
RewriteEngine On
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /(.*)index\.php($|\ |\?)
RewriteRule^/%1 [R=301,L]
이 코드는 사이트에있는 모든 디렉토리의 index.php를 제거합니다. 사이트 루트에서만 제거해야합니다. 문제는 루트가 "/"및 "/ some_folder /"와 같은 하위 디렉토리가 될 수 있다는 것입니다. 명시 적 하위 기반없이이 작업을 수행 할 수 있습니까?
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . ./ [L]
따라서
문제 :
이 CNC에 대한 예를 들어 내가 지금 그것을 만들기 위해 관리 사이트 루트 = httр는 : //site.com/sub/ 제거의 index.php에만 필요 루트 디렉토리에 있습니다. 썩음 디렉토리는 다를 수와 결정에만 루트에서의 index.php를 제거하려면이 규칙을 사용하여 명시 적으로 기본 디렉토리
당신이 원하는 것을 나에게 명확하지 않다. 즉, 입력이 정확히 무엇이고 출력은 무엇이되어야 하는가? –
사이트 루트 = httр : //site.com/sub_dir/; input = /site.com/sub_dir/index.php; output = /site.com/sub_dir/; input2 = /site.com/sub_dir/sub2/index.php; output2 = /site.com/sub_dir/sub2/index.php; – Belkir