Archives de
Tag: php

Un mamp avec macports 2

Un mamp avec macports 2

Voici la suite du premier post sur l’installation d’un mamp avec macports. Il nous faut configurer mysql, php et apache.

Avant toute chose je conseil de rebooter le mac.

Commençons par mysql: lancez la commande suivante afin de définir un nouveau mot de passe root pour mysql :

/opt/local/lib/mysql5/bin/mysqladmin -u root password 'changezmoi'

Passons à PHP: je ne modifie que date.timezone pour y mettre la valeur « Europe/Paris ». Le fichier php.ini se trouve dan s/opt/local/etc/php54.

Viens enfin le tour d’apache. Le fichier httpd.conf est situé dans /opt/local/apache2/conf

Dans un premier temps cherchez le bloque « IfModule dir_module » et changez sa valeur par : « DirectoryIndex index.html index.php ».

Dans le bloque « IfModule mime_module » ajoutez : « AddType application/x-httpd-php .php »

Pour finir nous allons configurer apache pour gérer les hôtes virtuel dynamique.

Changez la directive DocumentRoot pour le répertoire de votre choix, dans mon cas /Users/aurel/Sites

Dans le deuxième block Directory apres le DocumentRoot modifier la valeur par le même que celle du DocumentRoot

Enfin à la fin ajouter le code suivant :

NameVirtualHost *:80
UseCanonicalName Off
<VirtualHost *:80>
      VirtualDocumentRoot /Users/aurel/Sites/%-2+
</VirtualHost>

Cela aura pour effet de chercher dans le repertorie /Users/aurel/Sites si un dossier sans la deniere extension existe. Par exemple, si le nom de domaine www.blog.dayo.fr.dev est redirigé vers la machie et qu’un dossier www.blog.dayo.fr existe dans le repertoire /Users/aurel/Sites alors ce contenu sera afficher.

Relancez apache avec la commande suivante :

sudo /opt/local/etc/LaunchDaemons/org.macports.apache2/apache2.wrapper restart

Et voila il ne reste plus qu’a modifier votre fichier hosts et créer les répertoire associé dans votre DocumentRoot

Un mamp avec macports 1

Un mamp avec macports 1

Suite l’installation de mamp et n’étant pas satisfait de son utilisation, je me suis décider a regarder du coté des autres solutions. Celle qui ma le plus plu est l’installation à travers le gestionnaire de paquet macports.

Concernant l’installation de macports rien de bien compliqué. Un fichier dmg a installer, vérifier que xcode est installé et dans les préférences xcode installer les « Command Line Tools ».

Créé un fichier mamp.sh et copiez le contenu suivant:

#launch with sudo
# install all softwares
port install mysql5-server
port install php54-mbstring
port install php54-intl
port install php54-apc
port install php54-posix
port install php54-xdebug
port install php54-pdo
port install php54-iconv
port install php54-mysql
port install php54-sqlite
port install php54-gd
port install php54-openssl
port install apache2
port install php54-apache2handler
port select php php54

# create init file
cp /opt/local/etc/php54/php.ini-development /opt/local/etc/php54/php.ini

# add php module to apache
cd /opt/local/apache2/modules
/opt/local/apache2/bin/apxs -a -e -n php5 mod_php54.so

# load mysql and apache at startup
port load apache2
port load mysql5-server

# start mysql
sudo -u _mysql mysql_install_db5
/opt/local/lib/mysql5/bin/mysqld_safe &

 

Une fois sauvegarder, utiliser la commande suivante : sudo mamp.sh

Ce script installe apache2, mysql et php54.

Dans le prochaine post j’expliquerais comment configurer le tous.

xdebug et MAMP

xdebug et MAMP

Suite à l’installation de MAMP, j’ai voulu installer xdebug.

Les premiers tutoriels que j’ai trouvés parlaient de précompilation avec différents outils. Rien de bien simple. Ce soir en m’y repenchant je suis tombé sur ce tuto assez simple.

Depuis 2009 certaines choses ont changé, je vais donc réexpliquer la démarche.

La première chose a faire et lancer MAMP et localiser ou ce situe le fichier php.ini ainsi que le dossier des extensions. Pour cela, allez sur http://127.0.0.1/MAMP/help.php?language=English et cherchez « php.ini » et « extension_dir » notez bien ces deux valeurs.

Le deuxième est de télécharger la librairie « PHP Remote Debugging » depuis le site du projet Komodo. La version Mac OS X la plus récente fera l’affaire. Une fois téléchargé, décompresser le fichier et allez dans le répertoire de votre version de PHP. Copiez alors le fichier « xdebug.so » dans le dossier des extensions PHP.

Éditez ensuite le fichier php.ini pour décommenter la ligne en dessous de « [xdebug] ». Le chemin sur la ligne doit être le bon ( le même que celui dans lequel vous avez copié le fichier xdebug.so.

Il suffit alors de redémarrer MAMP pour que xdebug soit pris en compte.

Mise à jour d’un projet composer

Mise à jour d’un projet composer

Peu de temps après la création de mon projet silex Symfony2 a été mis à jour. J’ai donc fait ma première mise à jour de mon projet avec composer.

Pour cela rien de plus simple, une petite commande et c’est bon.

Et voilà un projet à jour !

Installer Silex avec Composer

Installer Silex avec Composer

La première étape est bien entendu l’installation de composer. Rien de plus simple. Lancez un terminal puis allez dans le répertoire de votre projet et lancez

curl -s http://getcomposer.org/installer | php

Ensuite créez le fichier composer.json avec pour contenu:

{
    "require": {
        "silex/silex": "1.0.*"
    },
    "minimum-stability": "dev"
}

Ce fichier est utiliser pas composer afin de savoir quelles dependances télécharger pour le projet. Dans notre cas nous demandons Silex en version 1.0.*.

Afin d’installer silex lancez la commande suivante :

php composer.phar install

Un répertoire vendor avec les librairies utilisé par Silex vient d’être créé.

Afin d’avoir une page pour notre site créez un répertoire web puis un fichier index.php avec pour contenu :

<?php

require_once __DIR__.'/../vendor/autoload.php';

$app = new Silex\Application();

$app->get('/', function() {
    return 'Hello world!';
});

$app->run();

Une fois que vous accedez a votre cette page vous devriez voir « Hello world! » dans votre navigateur.