2016-06-08 38 views
0

我有3個領域(前端,後端,資產)託管與特定目錄/assets/我的所有資產文件單臺服務器上指向http://assets.mydomain.com/以防受到直接訪問的文件和目錄,但允許它從你的主要領域唯一

我想阻止用戶直接訪問我的文件和目錄,並允許我的所有其他域訪問這些文件。我GOOGLE了很多發現一些解決方案,使用.htaccess和設置deny all,但是這不工作在我的情況下,我猜不同。

回答

1

在那裏,在example.org域中的所有主機允許訪問是有關這個例子在Order

在下面的例子;所有其他主機都被拒絕訪問。

Order Deny,Allow 
Deny from all 
Allow from example.com 

這排除了所有主機,除了你自己的域(example.com)。

當你有機會到主配置,你也可以用Directory

<Directory /path/to/assets> 
... 
</Directory> 

如果沒有這個限制到特定的目錄,把OrderDenyAllow指令在資產.htaccess文件目錄。

+0

在'/資產/'目錄是HTTTP的'根://資產.mydomain.com /'我把一個.htaccess文件與 '訂單拒絕,允許 拒絕從所有 允許從mydomain.com' 但我越來越403禁止我的所有文件在它 –

+0

'拒絕允許'正在工作,但'允許'不起作用 –

+0

您是否嘗試從指定的域中獲取文件?在我的測試環境中,我嘗試了'curl --interface frontend.example.com assets.example.com',它給了我所要求的'index.html'。雖然「curl --interface www.test.com assets.example.com」,我得到了一個403. –

-1

這爲我工作

SetEnvIf Referer "^http://yourdomain.com/" letitpass 
Order Deny,Allow 
Deny from all 
Allow from env=letitpass 

我把這個代碼在.htaccess在根目錄下即/assets/http"//assets.yourdomain.com

+0

'Referer'不是安全的身份驗證或訪問控制。客戶端可能僞造Referer頭並訪問您的內容。如果這應該保護敏感數據,然後使用另一種技術。 –

+0

由於您的問題被標記爲[盜鏈],這可能就足夠了。另請參閱https://httpd.apache.org/docs/2.4/rewrite/access.html –

+0

@Olaf你可以建議我一些更安全的東西,我有點兒在這些東西noobot –

相關問題