Tomcat içinde çalışan bir Java servlet uygulamasına sahibim, yalnızca çalıştırmak istediğim bir yönetici komutu var Güvenlik nedeniyle makinenin kendisi (veya muhtemelen kendi bilgisayarım). Bu yüzden HttpServletRequest ben almalarını ancak uzaktan adresini kontrol Bunu zorlamak her zaman isteğiNeden uzak bir makineden erişilirse request.getRemoteAddr(). Equals ("127.0.0.1")
Neden bu, tamir veya orada olabilir yerel ana bilgisayardan gelen olmasa bile 127.0.0.1 döndürür admin komutumu yalnızca sunucudan çalıştırmanın alternatif bir yolu.
Lütfen kodunuzun bir kısmını yapıştırabilir ve bu kontrolü nerede yapmaya çalıştığınızı açıklayabilir misiniz? – Scis
, üzerinde çalıştığı makinede tomcatın önünde bir şey var mı (örneğin, nginx) isteği yönlendiriyor? 'X-Forwarded-For' başlığına bir göz atmayı deneyin. –
@Jonas Adler, homebox'ımın tersi olarak sunucudan çalıştırdığımda x-forwarded değeri evet (ev bilgisayarımın çalıştığı değer evimdeki ipaddress ile eşleşmese de) farklı olmalıyım. bunun yerine x-forwarded değerini kontrol edin ve sunucu makineme erişimi kısıtlayın. –