다음 구문을 사용하여 명령줄에서 하나의 지시문을 지정할 수 있다는 것을 알고 있습니다.
httpd -c "DocumentRoot ."
하지만 다른 옵션도 지정하고 싶다면 어떻게 해야 할까요? 이것이 가능한가?
-p, -d 등과 같은 정적 스위치가 있다는 것을 알고 있지만 실제로는 conf 파일 없이 http 데몬을 실행하고 싶기 때문에 명령 자체에서 모든 구성을 지정할 수 있는 기능이 필요합니다.
내가 이것을 선호하는 이유에 대해 나에게 질문하지 마십시오. 그것은 질문의 범위를 벗어납니다. 단일 명령을 복사하고 붙여넣어 여러 데몬을 시작하고 싶습니다. here 문서를 사용해 보았지만 더 직접적인 접근 방식이 있기를 바랍니다. 또한 lighttpd와 같은 다른 바이너리를 사용하고 싶지 않습니다. 나는 최신 버전의 Apache가 제공하는 업계 표준 기능을 원합니다.
편집하다- 이것을 시도했지만 여전히 포트 80을 사용하려고 합니다.
httpd -c "DocumentRoot ." -c 'Listen 7000'
답변1
이전 버전의 Apache는 Mac OS Lion의 httpd와 같은 여러 '-c' 옵션을 지원하지 않는 것 같습니다. 하지만 Ubuntu 12.04에서는 괜찮습니다.
apache2 \
-f /dev/null \
-C "DocumentRoot $PWD" \
-C 'Listen 7000' \
-C 'PidFile /tmp/pidfile' \
-C 'ErrorLog /dev/stdout' \
-D FOREGROUND