我使用带端口8080的glassfish 4.1服务器。
我的应用可以通过点击localhost:8080或使用my_ip_address:8080进行访问。
现在,我想只使用ip地址访问我的应用程序而不输入端口,比如我的ip是10.1.2.133,所以当我点击10.1.2.133时它会转到我的应用程序。 怎么做?
我尝试将端口更改为80并且运行良好。但我仍然想使用端口8080而不是80。
答案 0 :(得分:3)
我尝试将端口更改为80并且运行良好。但我仍然想使用端口8080而不是80。
端口80是Web浏览器理解HTTP协议的唯一默认端口。
如果要为服务器使用其他端口(8080),则必须:
重定向的工作原理是让端口80上的服务器发送HTTP 3xx响应,告诉用户浏览器将请求重新发送到端口8080服务器的URL。
反向代理由服务器在端口80上工作,将请求发送到端口8080服务器本身,然后中继响应。
答案 1 :(得分:1)
您可以考虑在应用程序前面使用apache httpd或HAProxy等反向代理。将它们配置为侦听端口80并根据上下文将请求重定向到应用程序8080
https://github.com/foosel/OctoPrint/wiki/Reverse-proxy-configuration-examples
https://dzone.com/articles/how-to-configure-ha-proxy-as-a-proxy-and-loadbalan
答案 2 :(得分:0)
默认的Http端口是80
,因此,如果您的应用程序在80
运行,则可以省略它,在其他情况下,您必须指定端口。否则,您必须让代理服务器在80
监听,并根据上下文(读取路径)或其他信息将其重定向到所需的服务器。
答案 3 :(得分:0)
您可以在8080上运行指向服务器的另一台服务器。您的其他服务器将在端口80上运行,因为这是默认端口。
Apache上的配置会是这样的:
<VirtualHost *:80>
ServerName sample.com
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://YOUR_IP_HERE:8080/
ProxyPassReverse / http://YOUR_IP_HERE:8080/
RewriteEngine On
<!--other config here-->
</VirtualHost>