Если возможно, можете ли вы ограничить свои предложения использованием html или javascript?
Нет. Поскольку нет безопасного пути , использующего только эти две техники. Все, что происходит на стороне клиента, можно манипулировать (тривиально легко). Если вы хотите быть уверены, вы должны применить это на стороне сервера, проверив заголовок REFERER
(sic!).
Ум, даже этим можно манипулировать.
Если вы используете Apache с включенным mod_rewrite
, следующий код ограничит доступ в соответствии со ссылкой на страницу:
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://www\.example\.com/.*
RewriteRule /* http://www.example.com/access-denied.html [R,L]
РЕДАКТИРОВАТЬ: я только что проверил руководство ... к сожалению, дать код состояния 401 здесь невозможно. Таким образом, вышеприведенное решение не является идеальным, поскольку, хотя оно блокирует доступ, оно не устанавливает соответствующий статус HTTP. : - / оставляет неприятный вкус во рту.