Il modo più efficace è quello di creare una lista bianca utilizzando la direttiva progettata per tale attività.
Order Allow,Deny
Allow from 123.456.789.123
Dove 123.456.789.123 è il proprio indirizzo IP statico.
Quando si utilizza la direttiva "Ordine Consenti, Nega", le richieste devono corrispondere a Consenti o Nega, se nessuna delle due viene soddisfatta, la richiesta viene respinta.
http://httpd.apache.org/docs/2.2/mod/mod_authz_host.html#order
Oppure si potrebbe farlo con mod_rewrite in questo modo.
RewriteEngine On
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.123$
RewriteRule .* - [F]
nota che 'RewriteEngine On' sarà ridondante se avete già inserito nelle regole sopra questo. Quindi, se è così, puoi scartarlo qui.
'order deny, allow' non è valido sintassi, lo spazio non è consentito. Apache produrrà un errore. Dovrebbe essere "order deny, allow", ma non posso correggerlo poiché le modifiche con <6 caratteri non sono consentite. – dezlov
Possibile duplicato di [Nega tutto, consentire solo un IP tramite htaccess] (http://stackoverflow.com/questions/4400154/deny-all-allow-only-one-ip-through-htaccess) – IvanRF