2011-07-25 31 views
0

我有一個網站,說www.test.com。現在我只需要輸入IP地址即102.3.0.2/index.php即可看到該網站。如何訪問該網站只能通過其IP

爲此,我需要改變我的htaccess文件?

以下是我htaccess文件代碼:

#Options +FollowSymLinks 

RewriteEngine on 
#RewriteBase /cash-flights/ 

RewriteCond %{HTTP_HOST} !^www\. 
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L] 

RewriteCond $1 !(^index\.php|gif$|jpg$|jpeg$|JPG$|JPEG$|GIF$|PNG$|BMP$|png$|bmp$|js$|php$|htm$|html$|css$|ttf$|txt$|pdf$|swf$|flv$|robots\.txt$|video_chat$|.ico$) 
#RewriteRule ^(?!js\/tinymce)(.*?)(\.html|\.php|\/)?$ index.php/$1 [NC,L] 

RewriteRule ^(?!phpinfo\.php)(?!js\/tinymce)(?!turkeyMap)(?!cron_home)(?!quote_by_sms)(?!paypal)(?!supporttrio)(?!12all)(?!system\/application\/libraries\/libgmap)(.*?)(\.html|\.php|\/)?$ index.php/$1 [NC,L] 
RewriteRule ^(.*)$ - [NC,L] 

#php_value session.gc_maxlifetime 86400 
<Files 403.shtml> 
order allow,deny 
allow from all 
</Files> 

deny from 100.200.200.200 
Options -Indexes 

回答

0

不知道這是爲什麼你沒有得到它的原因,但IP必須是四位數字。 I.E. 102.1.10.1。

任何站點名稱例如:www.test.com必須轉換爲ip,如果您可以使用名稱訪問站點,也可以使用ip地址訪問該站點。

+0

但是如果iam試圖通過ip訪問站點,那麼它重定向到wwww,asper代碼在.htaccess.So我該如何改變? – Linto

+0

也許'102.3.02'的意思是'102.3.0.2',因爲'02'中的前導零不是真的合法。 –

+0

是的,它只是例如 – Linto

0
RewriteCond %{HTTP_HOST} !=123.456.789.101 
RewriteRule ^(.*)$ http://123.456.789.101$1 [R,L] 

但是,通過編輯HOST HTTP標頭的值可以很容易地繞過它。

+0

我是否需要添加此代碼片段,我是否需要從現有的.htaccess中刪除任何代碼。讓我知道,其中123.456.789.101是服務器的IP? – Linto

+0

是的,'123.456.789.101'「應該是」您服務器的IP地址。您需要在'RewriteEngine on'行後添加該代碼。 – Dor

+0

我需要刪除現有的代碼RewriteCond%{HTTP_HOST}!^ www \。 從.htaccess文件重寫規則^(。*)$ http://www.% {HTTP_HOST}/$ 1 [R = 301,L],對吧? – Linto

相關問題