Warum läuft „apachectl -k start“ nicht funktionieren, aber „sudo apachectl -k start“ tut?

StackOverflow https://stackoverflow.com/questions/904606

  •  05-09-2019
  •  | 
  •  

Frage

Ich arbeite an meinem OS X mit der Standard-Installation von Apache. Aus irgendeinem Grund, wenn ich die „apachectl“ Befehl ohne „sudo“ laufen bekomme ich „keine Abhör Steckdosen verfügbar / nicht in der Lage Protokolle zu öffnen.“ Ich vermute, das eine Permissionierung Sache ist, so kann mir jemand helfen? Ich bin mit Apache 2.2.

Auch Seiten Frage, wo die die Apache Skriptdatei, die im Grunde die „exe“ ist, die ausgeführt wird Linux? Ich versuche, meinen Server mit Aptana Studio intergrate, und es erfordert der Pfad zum Apache installieren. Ich weiß, in Windows, dies wäre "C: \ path \ to \ httpd.exe", aber ich weiß nicht, wie dies in Linux funktioniert

.
War es hilfreich?

Lösung

Ist Ihr Server auf Port 80? (In der Regel) nur root erlaubt Ports zu öffnen unter 1024. Daraus ergibt sich die Notwendigkeit für sudo .

Wie Sie sehen können, viele Leute fragen, wie dies zu umgehen. Eine mögliche Lösung ist Port-Forwarding auf Ihrem Router auszuführen. (Ich gehe davon aus, dass hier Sie hinter einem Router sind ...). Dann eingehende Verbindungen auf Port 80 weitergeleitet werden können, um z.B. 8080 Port So nur lokal braucht man in den Hafen verbinden 8080. (Es elegantere Lösungen können sein ... jemand anderes wird sie posten.)

Andere Tipps

ich denke, im Allgemeinen (sowohl auf OS X und Linux - ich bin nicht sicher, welches Sie sich beziehen) die httpd-Binary befindet sich unter: / usr / sbin / httpd

Wenn Sie müssen in der Lage sein, Apache neu zu starten, und Sie können nicht so tun als root (für welchen Gründen auch immer ..), dann können Sie für eine nicht ‚notorisch bekannt‘ Port begleichen müssen.

try this

(mit php) $ A = shell_exec ( 'sudo -u root -S /etc/init.d/apache2 restart

Passwort in passfile gespeichert sollte

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top