2012-07-18 69 views
1

我想重定向到另一個頁面,如果任何用戶試圖通過URL訪問成員區域。重定向網址,如果referrer不是當前域名

RewriteEngine On 
RewriteBase/
RewriteCond %{HTTP_REFERER} ^http(s)?://(www\.)?(?!test\.jason\.ca) [NC] 
Rewriterule^http://test\.jason\.ca [R,L] 

因此,如果他們試圖訪問任何url而不使用referrer作爲域名,我希望它將它們踢到主頁。我知道我做錯了,但我還不知道。有任何想法嗎?

編輯:所以它不完全像我以上張貼明顯。我忘了,包括這個部分,但這是它是如何在我的.htaccess正是:

php_value upload_max_filesize 1024M 
php_value post_max_size 20M 
php_value max_execution_time 200 
php_value max_input_time 200 
AddType text/x-component .htc 


# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
RewriteCond %{HTTP_REFERER} ^http(s)?://(www\.)?(?!test\.jason\.ca) [NC] 
Rewriterule^http://test\.jason\.ca [R,L] 
</IfModule> 

# END WordPress 
+0

這對我 – 2012-07-18 20:49:09

+0

工作正常,只是僅供參考,使用referer進行任何驗證通常是一個相當糟糕的想法,因爲用戶代理可以提供他們想要的任何東西。欺騙是微不足道的,但瀏覽器不報告引薦信息的合法用戶會受到干擾。我建議不要這樣。 – 2012-07-19 00:06:29

+0

你推薦使用什麼?我試圖阻止任何人訪問我的wordpress上傳文件夾,除非他們有權訪問它(簽署到wordpress) – jasonaburton 2012-07-19 00:30:36

回答

0

你需要把上面的WordPress的規則的引用者的規則:

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_REFERER} ^http(s)?://(www\.)?(?!test\.jason\.ca) [NC] 
Rewriterule^http://test\.jason\.ca [R,L] 

RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

# END WordPress 
+0

沒有工作。結果仍然相同。 – jasonaburton 2012-07-18 22:54:08