28 november 2010

Een Mac op afstand bedienen met PHP

3 min leestijd

Standaard is iedere Mac voorzien van de Apache webserver. Door deze te gebruiken met PHP en een simpel OS X Terminal commando kan je vanaf een ander netwerk apparaat scripts starten op je Mac. Je kan je Mac dus eigenlijk op afstand bedienen via de ingebouwde webserver.

Dit klinkt misschien allemaal ingewikkeld maar het is redelijk eenvoudig te maken. In deze post leg ik uit hoe je dit kan maken. We activeren de Webserver, laden de PHP5 module en maken een script aan dat het volume van je Mac kan ‘muten’.

Webserver en PHP5 activeren

Open een nieuwe OS X Terminal sessie en type het onderstaande commando om Apache te vertellen dat bij het starten ook de PHP module geladen moeten worden. Standaard is het gebruik van de PHP uitgeschakeld.

sudo nano /private/etc/apache2/httpd.conf

Onderaan de lijst met loadmodules verwijder je de ‘#’ die voor de onderstaande regel staat:

LoadModule php5_module libexec/apache2/libphp5.so

Bewaar de wijziging met ctrl+x, enter en sluit de nano editor af.

Ga naar:  ▸ Systeemvoorkeuren ▸ Delen ▸ optie: Webserver

Stop en herstart de webserver.

In het Webserver-venster wordt aangegeven op welke url je persoonlijke website is terug te vinden in mijn geval is dat http://10.0.0.101/~richard/ dit adres is straks nodig om het php script aan te roepen.

Het PHP script

Nu de webser actief is gaan we het PHP script ‘mute.php’ plaatsen in je persoonlijke webserver map. Het script is vrij eenvoudig het voert door middel van de functie ‘php exec’ een OS X Terminal commando uit. In dit voorbeeld gebruiken we het OS X commando om het geluidsvolume op mute te zetten.

Tevens geven we in het script aan dat we gebruik willen maken van de afbeelding: MuteIcon.png. Door deze regel te gebruiken hebben we een mooi icoon op het springboard staan als we een bookmark maken van de url.

De PHP code:

<html>
<head>
<title>Mute Mac</title>
<link href="MuteIcon.png" rel="apple-touch-icon">
</head>
<body>

<?php exec("osascript -e \"set Volume 0\""); ?>
<h1>Mac Muted!</h1>

</body>
</html>

Beide bestanden kan je hier downloaden: [download is niet meer beschikbaar]. Unzip het bestand en plaats het php-script en de afbeelding in je thuismap ▸ Webpagina’s.

Nu wordt het tijd om lawaai te gaan maken, start een applicatie de geluid maakt en ga met je iPhone, iPad of ieder andere apparaat met een webbrowser naar de url die wordt aangegeven bij de webserver instellingen. Voeg aan de url mute.php toe, in mijn voorbeeld wordt dit dus:

http://10.0.0.101/~richard/mute.php

Op het moment dat je de url aanroept dan zal je merken dat het geluidsvolume op de Mac direct wordt ‘gemuted’. Geweldig toch?

Nadat de tekst ‘Mac Muted!” in Mobile Safari verschijnt kan je een bookmark met icoon op je springboard plaatsen.

Dit is natuurlijk een heel erg basic voorbeeld maar geeft wel de kracht van de webserver aan. In feite kan je ieder willekeurig commando of script starten op je Mac met behulp van Apache en PHP.

Update:
18:30 Check ook de comments voor een Volume Slider gemaakt door Kees Kluskens!

info
Auteur Richard IJzermans
Bijgewerkt10/11/2021 11:18
Categorie macOS
Feedback Probleem melden
Delen 𝕏

Reacties

Laat een reactie achter



Download gratis de appletips app
voor iPhone en iPad in de App Store