すべて、
ポート80で桟橋をセットアップしようとしていましたが、以下のように許可が拒否されたという例外を与えました。 setuidを使用するようにjettyをセットアップし、start.iniを次のように構成しました。
OPTIONS=Server,jsp,jmx,resources,websocket,ext,plus,annotations,jta,jdbc,setuid
(start.iniの最初の構成ファイルとして)
etc/jetty-setuid.xml
非rootユーザーのユーザー名とグループ名を含むjetty-setuid.xmlファイル。
2012-07-03 15:29:02.411:INFO:oejdp.ScanningAppProvider:Deployment monitor /opt/jetty-hightide-8.1.3.v20120416/contexts at interval 1
2012-07-03 15:29:02.454:WARN:oejuc.AbstractLifeCycle:FAILED [email protected]:80: Java.net.SocketException: Permission denied
Java.net.SocketException: Permission denied
at Sun.nio.ch.Net.bind(Native Method)
at Sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.Java:126)
at Sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.Java:59)
at org.Eclipse.jetty.server.nio.SelectChannelConnector.open(SelectChannelConnector.Java:182)
at org.Eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.Java:311)
at org.Eclipse.jetty.server.nio.SelectChannelConnector.doStart(SelectChannelConnector.Java:260)
at org.Eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.Java:59)
at org.Eclipse.jetty.server.Server.doStart(Server.Java:273)
at org.Eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.Java:59)
at org.Eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.Java:1215)
at Java.security.AccessController.doPrivileged(Native Method)
at org.Eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.Java:1138)
2012-07-03 15:29:02.455:WARN:oejuc.AbstractLifeCycle:FAILED org.Eclipse.jetty.server.Server@66da9ea4: Java.net.SocketException: Permission denied
Java.net.SocketException: Permission denied
1024未満のポートは、スーパーユーザーのみがバインドできます。 jettyをスーパーユーザー(root)として実行するか、1024以上のポートを使用するように設定することができます(たとえば、8080、これは通常Javaベースのアプリサーバーに対して行われます)。どうしてもポート80からアクセスできるようにする場合は、Apacheサーバーを設定してJettyにリクエストを転送(または「リバースプロキシ」)することができます。これはここに明確に文書化されています。
http://docs.codehaus.org/display/JETTY/Configuring+mod_proxy
Tomcatの人々のためにApacheを残し、Nginxとそれらの単純な行に行きます
server {
listen 80;
server_name localhost;
access_log /var/log/nginx/example.log;
location / {
proxy_pass http://127.0.0.1:5000;
proxy_redirect off;
proxy_set_header Host $Host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}