2017-12-07 4 views
1

나는 public 폴더, 파일 index.php, 파일 ajax.php, img의 예외로 모든 폴더와 파일을 차단하는 .htaccess 파일을 만들려고합니다. , css 및 js. 또한 URL에 입력 한 내용에 관계없이 www.domain.com/index.php로 리디렉션해야합니다. 거의 모든 것이 작동하지만 ajax.php 파일은 여전히 ​​차단되어 있으므로 내 javascript 파일은 액세스 할 수 없습니다. 어떤 제안?.htaccess 일부 파일을 제외하고 모든 PHP 파일을 차단합니다.

내 index.php는 public 폴더에 있고 다른 모든 php 파일은 php, js, css 등의 폴더에 있지만 공개되지는 않습니다. 그것의/root/public과/root/php 등등.

RewriteEngine On 
RewriteBase/

RewriteCond %{REQUEST_URI} !^/(?:public/|(?:index|ajax)\.php$|.+\.(?:jpe?g|gif|png|ico|tiff|css|js)$) [NC] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+)$ public/index.php?_url=$1 [QSA,L] 
: htaccess로 파일
RewriteEngine On 

RewriteBase  /
RewriteCond  %{REQUEST_FILENAME} !-f 
RewriteRule  ^(.*)$ public/index.php?_url=$1 [QSA,L] 

RewriteCond %{REQUEST_URI} !^/(?:public/|index\.php$|ajax\.php$|.+\.(?:jpe?g|gif|png|ico|tiff|css|js)$) [NC] 
RewriteRule . - [F] 

답변

1

는이 방법이 /에/루트 배치