Web uygulamamı olarak yürütmek istiyorum http://localhost
.
Web uygulamamı olarak yürütmek istiyorum http://localhost
.
Yanıtlar:
1) conf
Tomcat kurulum dizinindeki klasöre gidin
e.g. C:\Tomcat 6.0\conf\
2) Dosyada aşağıdaki etiketi server.xml
düzenleyin
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
3) port=8080
Değeriport=80
4) Dosyayı kaydedin.
5) Tomcat'inizi durdurun ve yeniden başlatın.
etc/default/tomcat7
seti AUTHBIND=yes
, bağlantı noktası 80 için bir PermissionDenied hatayı önlemek için
Ubuntu 14.04 LTS, Amazon EC2'de. Aşağıdaki adımlar benim için bu sorunu çözdü:
1. server.xml dosyasını düzenleyin ve port = "8080" i "80" olarak değiştirin
sudo vi /var/lib/tomcat7/conf/server.xml
<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
2. tomcat7 dosyasını düzenleyin (dosya oluşturulmadıysa oluşturmanız gerekir)
sudo vi /etc/default/tomcat7
uncomment ve change # AUTHBIND = hayır, evet
3. authbind yükleyin
sudo apt-get install authbind
4. 80 numaralı bağlantı noktasında tomcat7 okuma + yürütme sağlamak için aşağıdaki komutları çalıştırın.
sudo touch /etc/authbind/byport/80
sudo chmod 500 /etc/authbind/byport/80
sudo chown tomcat7 /etc/authbind/byport/80
5. Tomcat'i yeniden başlatın:
sudo /etc/init.d/tomcat7 restart
authbind
sadece ayarı ekler.
Linux Debian tabanlı (bu yüzden Ubuntu dahil) /etc/default/tomcat7
#AUTHBIND=no
, sunucunun ayrıcalıklı bir bağlantı noktasına bağlanabilmesi , hattı ve değerini 'evet' olarak ayarlamanız gerekir.
Ubuntu ve Debian sistemlerinde, birkaç adım gereklidir:
Server.xml olarak, hat değiştirmek <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
zorunda port="80"
.
Önerilen (gerekli değil) authbind paketini aşağıdaki gibi bir komutla yükleyin:
sudo apt-get install authbind
Satırı açıp şu şekilde ayarlayarak server.xml dosyasında (ya /etc/tomcat6
da içinde /etc/tomcat7
) authbind özelliğini etkinleştirin :
AUTHBIND=yes
Her üç adım da gereklidir.
Ben gelen port değiştirmeyi denedim 8080
hiç 80
de server.xml
ama benim için işe yaramadı. Sonra alternatif buldum,iptables
, performans üzerinde bir etkisi olduğundan eminim .
Aşağıdaki komutları kullanıyorum:
sudo /sbin/iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
sudo /sbin/service iptables save
http://www.excelsior-usa.com/articles/tomcat-amazon-ec2-advanced.html#port80
Önceki yanıtlar 14.04 Ubuntu Sunucusunda benim için iyi çalışmadığı için (iyi, ama yeterli değildi), bu önerilerden bahsediyorum (bu bir teklif) söz.
Düzenleme: @ gibi jason-faust, yorumlar kısmında belirttiğimiz notu , 14.04 tarihinde authbind
IPv4 şey artık gerekli değildir tercih yüzden onunla gemiler artık destek IPv6 yaptığı paketi .
1) Install authbind
2) Make port 80 available to authbind (you need to be root):
touch /etc/authbind/byport/80
chmod 500 /etc/authbind/byport/80
chown tomcat7 /etc/authbind/byport/80
3) Make IPv4 the default (authbind does not currently support IPv6).
To do so, create the file TOMCAT/bin/setenv.sh with the following content:
CATALINA_OPTS="-Djava.net.preferIPv4Stack=true"
4) Change /usr/share/tomcat7/bin/startup.sh
exec authbind --deep "$PRGDIR"/"$EXECUTABLE" start "$@"
# OLD: exec "$PRGDIR"/"$EXECUTABLE" start "$@"
Zaten bir amacımız setenv.sh
dosyayı /usr/share/tomcat7/bin
birlikte CATALINA_OPTS
, kullanılan vardır:
export CATALINA_OPTS="$CATALINA_OPTS -Djava.net.preferIPv4Stack=true"
Artık bağlantı noktasını 80
diğer yanıtlarda belirtildiği gibi değiştirebilirsiniz .
Modern linux'da (benim için) en iyi yaklaşım xinetd kullanmaktır:
1) /etc/xinet.d/tomcat-http oluşturun
service http
{
disable = no
socket_type = stream
user = root
wait = no
redirect = 127.0.0.1 8080
}
2) /etc/xinet.d/tomcat-https oluşturun
service https
{
disable = no
socket_type = stream
user = root
wait = no
redirect = 127.0.0.1 8443
}
3) chkconfig xinetd açık
4) /etc/init.d/xinetd başlangıç
Birisi arıyorsa, aşağıdaki Eclipse IDE kullanıcısında tomcat port numarasını değiştirme adımlarıdır.
Sunucular görünümünde, sunucu adına çift tıklayın:
Tomcat için bir yapılandırma sayfası aşağıdaki gibi açılacaktır:
Bağlantı noktası numaralarının sağdaki tabloda gösterildiğine dikkat edin. Düzenlemek için tıklayın, örneğin:
HTTP için bağlantı noktası numarasını 8080'den 80'e değiştirecektir. Değişikliği kaydetmek ve sunucuyu yeniden başlatmak için Ctrl + S tuşlarına basın. Bağlantı noktası numarası değişikliğini Konsol görünümünde görebiliriz:
Bu içeriğin tamamı aşağıdaki linkten alınmıştır, daha fazla bilgi için lütfen bu linke bakınız. http://www.codejava.net/servers/tomcat/how-to-change-port-numbers-for-tomcat-in-eclipse
Aşağıdaki komutu çalıştırmak ile çalıştı. Değişen denedim server.xml
ve conf dosyası ama ikisi de işe yaramadı.
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 80 -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 8080 -j ACCEPT
/sbin/iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
Eğer eclipse kullanıyorsanız ve değiştirerek server.xml sizin için çalışmazsa aşağıdaki makaleyi deneyin .. eclipse gibi IDE kullanıyorsanız bağlantı noktasını değiştirmek için adımları var.
Tomcat'in Conf klasörüne git
server.xml dosyasını açın
Aşağıdaki gibi görünen bağlayıcı düğümlerden birine gidin
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Bağlantı noktasını değiştirin
kaydet ve yeniden başlat tomcat
İşte adımlar:
-> Yolu izleyin: {tomcat dizini> / conf -> Bu satırı bulun:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
port numarasını "8080" yerine "80" olarak değiştirin.
-> Dosyayı kaydedin.
-> Sunucuyu yeniden başlatın :)