没有进入代理,或端口redirect,端口转发等,有没有任何本地的方法来绑定树脂(一个Java服务器)端口80,在Ubuntu服务器,而树脂由root启动,但作为一个非特权用户www数据)?
这是Ubuntu 10.10,从caucho apt库运行Resin。 我知道如果我以root身份运行&操作Resin,我可以使用端口80,但正如您可以想象的那样,这并不理想。
find答案,下面的terminalcmds。 这些命令假设你正在运行Ubuntu 10,并通过apt库安装了Resin。 在我的情况下,www-data将运行authbind,用户ID为33,您将在下面看到:
# aptitude install authbind # nano -w /etc/authbind/byuid/33 # chown www-data. /etc/authbind/byuid/33 # chmod 700 /etc/authbind/byuid/33 # nano -w /etc/init.d/resin
在编辑/etc/init.d/resin时,find:
start)
在下面find:
su $USER
删除该行,replace为:
su $USER -s /usr/local/bin/authbind --deep /bin/bash -c """$JAVA -jar $RESIN_HOME/lib/resin.jar $ARGS start""" 1>/dev/null 2>/dev/null
找:
stop)
在下面find:
su $USER
删除该行,replace为:
su $USER -s /bin/bash -c """$JAVA -jar $RESIN_HOME/lib/resin.jar $ARGS shutdown""" 1>/dev/null 2>/dev/null
写入文件并退出(使用CTRL + O,CTRL + X)
现在你需要编辑树脂configuration:
# nano -w /etc/resin/resin.xml
确保你的HTTP端口设置为80(我相信这是默认的,因为Resin默认运行的是rot),并且确保下面两行在文件中也没有注释:
www-data www-data
保存并退出(CTRL + O,CTRL + X)
现在启动Resin:
# service resin start