Я знаю, что можно указать одну директиву в командной строке, используя следующий синтаксис:
httpd -c "DocumentRoot ."
А если я захочу указать и другие параметры? Это возможно?
Я знаю, что существуют статические ключи, такие как -p, -d и т. д., но я действительно хочу запустить http-демон без какого-либо файла конфигурации, поэтому хочу иметь возможность указать всю конфигурацию в самой команде.
Не спрашивайте меня, почему я предпочитаю это, это выходит за рамки вопроса. Я просто хочу запустить кучу демонов, скопировав и вставив одну команду. Я пробовал с документом here, но надеюсь, что есть более прямой подход. Я также не хочу использовать другой двоичный файл, например lighttpd. Я хочу стандартную для отрасли возможность последней версии Apache.
РЕДАКТИРОВАТЬ- Я попробовал это, но он все еще пытается использовать порт 80:
httpd -c "DocumentRoot ." -c 'Listen 7000'
решение1
Похоже, что старые версии Apache не поддерживают несколько опций '-c' - например, httpd на Mac OS Lion. Но в Ubuntu 12.04 все нормально:
apache2 \
-f /dev/null \
-C "DocumentRoot $PWD" \
-C 'Listen 7000' \
-C 'PidFile /tmp/pidfile' \
-C 'ErrorLog /dev/stdout' \
-D FOREGROUND