2016-12-26 9 views
2

Когда я запустил make run.byte Я получаю эту ошибку ocsigenserver: ocsigen:main: Fatal - You are not allowed to use port 80.. Я пробовал sudo make run.byte, но sudo не знает о opam или ocsigenserver. Я пытался играть с wwwuser в Makefile.options, но я не могу заставить его работать. README, сгенерированный ликеро-водочным заводом, не дает много информации, и я не могу найти что-либо в Интернете.ocsigenserver: вам не разрешено использовать порт 80

make test.byte работает просто отлично.

Любая идея, пожалуйста?

Редактировать: Похоже, что это не имеет никакого отношения к eliom/ocaml, пользователи без root просто не могут ничего запускать на портах ниже 1024 на Ubuntu. Но я до сих пор не понимаю, почему ликеро-водочный завод предполагает, что я могу это сделать, если мой wwwuser - это я, я не думаю, что это когда-нибудь будет работать. Я также не понимаю, как я должен запускать sudo make run.byte, opam установлен в моей ~ каталоге, sudo не может найти ocsigenserver. Я мог бы заставить его работать, запустив все как root, но в любое время, когда я запускаю команду opam в качестве пользователя root, я получаю предупреждение you shouldn't use opam as root. Я не думаю, что это так, как я должен ее запускать. Что-то не в порядке.

+1

Обычно люди не запускают свои приложения на привилегированном порту, но вместо этого они запускают 'nginx' (или какой-либо другой веб-сервер) на порт 80 или 443 и прокси-сервер для порта приложения соответственно. – 599644

+0

Почему бы не просто 'sudo./Run.byte'? – Stargateur

ответ

3

С предыдущим выпуском eliom (eliom.5.0.0) - Я еще не использовали свежий 6.0.0 релиз - вы должны установить первый ваш eliom применение:

Sudo сделать установку

Затем вам нужно убить процесс, слушая порт 80/tcp (например: sudo netstat -tulpn 80 | grep :80 поможет определить процесс прослушивания этого порта - скорее всего, apache2 или lighthttpd).

Затем запустите исполняемый файл:

Суды PATH = $ PATH = $ OCAMLPATH OCAMLPATH LD_LIBRARY_PATH = $ LD_LIBRARY_PATH сделать run.byte

Это то, что написано в README, созданный с eliom-distillery - но позаботьтесь, чтобы установить свои переменные env до:

OCAMLPATH is the location of ocaml used in your env (in my env :~/.opam/4.02.3/bin). 
LD_LIBRARY_PATH : .opam/4.02.3/lib/stublibs (otherwise dllssl_threads_stubs is not found) 
+0

Я пробовал это, и это не сработало, потому что я не знал, что сначала должен был установить эти переменные. Мерси Пьер. –

 Смежные вопросы

  • Нет связанных вопросов^_^