/ / Як запустити Apache як не-root, використовуючи нестандартні порти? - apache, localhost, centos7

Як запустити apache як не-root, використовуючи нестандартні порти? - apache, localhost, centos7

Мені потрібно запустити apache як не-root користувача,прослуховування порту 8443, щоб мати доступ до нового веб-сайту (на localhost: 8443) для внутрішнього сканування безпеки в системі CentOS 7.3. Я розумію лише основи apache (на Ubuntu), і я НЕ веб-адміністратор, тому я не знайомий з багатьма параметрами / налаштуваннями конфігурації, необхідними для виконання цієї роботи.

У мене є каталог (/ webcontent) з моїм веб-сайтомвміст (який вимагає php), і може розміщувати там різні файли conf необхідні. Але я натрапляю на те, щоб правильно встановити httpd.conf для того, щоб apache працював як локальний користувач, запущений з:

httpd -f /webcontent/conf/httpd.conf

І встановили журнали для запису в / webcontent / logs (за допомогою параметра ErrorLog), але він скаржиться на те, що не має доступу до запису / run / httpd, і тому не почне:

[Чет 23 травня 11:59 - 51.289587 2017] [auth_digest: error] [pid 25464] (13) Відмова в дозволі: AH01762: Не вдалося створити сегмент спільної пам'яті у файлі /run/httpd/authdigest_shm.25464

Я вважаю, що це лише перша з багатьох проблемЯ, можливо, доведеться запустити цю функцію, так що якщо хтось може вказати певні налаштування конфігурації, необхідні в httpd.conf (або в іншому місці?), Щоб отримати цей сценарій для роботи, це було б дуже високо цінується. Або будь-які інші пропозиції щодо запуску не-корінного екземпляра apache для тестування.

Відповіді:

0 для відповіді № 1

Трохи запізнився, але я бачу, що досі немає відповіді. Я сам сам зіткнувся з цим питанням.

Використовувати DefaultRuntimeDir директива, щоб перевизначити каталог "/ run / httpd" за замовчуванням. Це йде в httpd.conf. Наприклад:

DefaultRuntimeDir  "/my/local/rundir"

Це призведе до того, що Apache створить "/my/local/rundir/authdigest_shm.1234"

З якоїсь причини це не перевизначає каталог файлів pid за замовчуванням, тому встановіть його за допомогою PidFile директиву, наприклад:

PidFile "/my/local/rundir/httpd.pid"

Ви також можете подивитися на ServerRoot директива