Apache 2 PHP MySQL ne fonctionne pas

  • Créateur du sujet Créateur du sujet EricM
  • Date de début Date de début

EricM

Membre actif
28 Juillet 2004
738
34
57
Grimaud Var France
Bonsoir,

J'ai installé Apache 2, PHP, MySQL, mais je n'arrive pas à utiliser les documents .php. Dans l'exemple ci-dessous, le fichier test.php situé dans le dossier "Sites" de mon dossier home. Je ne comprends pas ce qu'il se passe. Lorsque j'ouvre le fichier dans Safari ou Firefox avec la commande "127.0.0.1/~xxx/test.php" xxx c'est mon nom d'administrateur, j'ai l'erreur ci-dessous qui s'affiche.

Not Found
The requested URL /~Eric/test.php was not found on this server.
Apache/2.0.52 (Unix) PHP/4.3.9 DAV/2 Server at 127.0.0.1 Port 80

Le partage Web est désactivé dans les prefs "partage".

Voilà, je n'ai pas trouvé de solution. Je débute. Merci

Eric
 
Salut,

plusieurs pistes pour tenter de faire fonctionner:
  • je suppose que test.php est sous /Users/Eric/Sites/test.php
  • il conviendrait d'activer le partage web dans les préférences (à moins que tu ne lances apache manuellement)
  • il faut vérifier que php est activé*dans Apache (quelques commentaires à faire sauter)

Pour tester le premier point, tu peux simplement tenter l'url http://localhost/~Eric/ (attention, le dernier / est important). Tu devrais voir la page d'accueil 'X'.

Pour le dernier points de nombreux liens existent pour activer php sous apache.

gg
 
J'ai activé le partage web personnel et je me suis connecté http://localhost/~Eric/ et je suis tombé sur la page web d'ouverture. Si je n'active pas le partage, je n'arrive à rien. Par contre, toujours le même message d'erreur quand j'utilise le lilen ci-dessus pour ouvrir le fichier test.php. Voilà les dernières infos.

Eric
 
Si tu fais un index.html, ça marche, ou bien c'est tous les fichiers que tu n'arrives pas à lire ?
 
J'ai trouvé comment faire. Il fallait modifier des lignes avec le Terminal. J'ai trouvé l'info sur http://www.labo-apple.org/fr/articles/os+x/otremacosx-189/1/

Merci.

Eric


Activer l'interpréteur PHP

Le premier des composants à activer est l'interpréteur PHP.

Pour ce faire, il est nécessaire d'ouvrir le fichier de configuration d'Apache et d'y effectuer quelques modifications comme suit :
Ouvrez un Terminal, et tapez la commande suivante :

sudo emacs /etc/httpd/httpd.conf

Entrez votre mot de passe (vous devez être administrateur) quand celui ci vous est demandé.
Cherchez à l'intérieur du fichier que vous parcourez maintenant, la ligne suivante :

#LoadModule php4_module libexec/httpd/libphp4.so>

Supprimez le # au début de cette ligne vous optenez donc :

LoadModule php4_module libexec/httpd/libphp4.so

A présent, continuez à descendre dans le fichier à la recherche des lignes suivantes :

<IfModule mod_php4.c>
# If php is turned on, we repsect .php and .phps files.
AddType application/x-httpd-php .php

Ajoutez une ligne, de sorte à avoir maintenant :

<IfModule mod_php4.c>
# If php is turned on, we repsect .php and .phps files.
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3

Enfin, juste en dessous de l'endroit où vous vous trouvez, vous devriez trouver :

DirectoryIndex index.html index.php

Modifiez cette ligne afin d'obtenir :

DirectoryIndex index.html index.php index.php3

Sauvegardez le présent fichier, et quittez. (ctrl X+S ctrl X+C)
Dès lors, l'interpréteur est activé sur votre système, et votre serveur apache sera en mesure de "comprendre" les fichiers PHP.
 
Pour résumer ce que tu as fait:
  1. tu as démarré Apache (depuis le panneau de Preferences)
  2. tu as activé php pour Apache

Il est possible qu'il faille redémarrer Apache pour qu'il prenne en compte les changements de configuration (/etc/httpd/httpd.conf)


Pô mal pour un débutant :up:
 
En fait, j'ai l'intention de créer une page Web sur mon Mac qui ne sera visible que par certaines personnes. Je voudrais, depuis iPhoto, afficher sur une page web, des albums photos de ma fille. Cet album sera en particuler disponible pour ma belle-soeur qui habite au Pérou. J'aurai certainement encore besoin de vous tous pour me conseiller. si quelqu'un a des idées pour m'aider, je suis preneur. Merci

Eric
 
Bonjour,

Je reviens vers vous car j'ai un nouveau problème lorsque je tape http://127.0.0.1/~eric/test.php, pas de problème je visualise bien la page d'infos de PHP. J'ai aussi accès à la page de mon diaporama. Par contre, avec http://localhost/, j'ai la page d'accueil d'apache et avec http://localhost/test.php, http://localhost/~eric/test.php, rien ne s'affiche, mis à part la page d'erreur de mon premier post.
Je suis perdu à nouveau. Merci

PS: j'ai changé mon intitulé de compte en eric, sans la majuscule du début.

Eric
 
Hello :)

Ds httpd.conf, regarde après :


# You will have to access it by its address (e.g., http://123.45.67.89/)
# anyway, and this will make redirections work in a sensible way.
#
# 127.0.0.1 is the TCP/IP local loop-back address, often named localhost. Your
# machine always knows itself by this address. If you use Apache strictly for
# local testing and development, you may use 127.0.0.1 as the server name.
#
#ServerName new.host.name

En gros, Décommente ServerName et met lui localhost, ensuite relance apache

(1) : #ServerName new.host.name => ServerName localhost
(2) : Dans le terminal : apachectl graceful (pour relancer apache)

J'ai pas testé mais je pense que c'est ça !
 
C'est bon, cela fonctionne avec http://localhost/~eric/test.php.

J'aurais une autre question, j'ai un diaporama sur une page en html. Le diaporama est constitué d'un dossier qui contient les images et d'un fichier d'index en .html. Comment faire pour que le diaporama soit visible sur le Web et consultable par des internautes ?
Le dossier des photos et l'index sont situés dans le dossier "Sites" de mon répertoire. je suis bien entendu l'administrateur unique.
Encore merci.

Eric
 
Pour le rendre visible, je te conseille d'utiliser http://www.no-ip.com/

C'est un programme (gratuit) qui va gérer un nom de domaine xxx.no-ip.com/org et qui se redirigera sur ta machine. Le programme collecte ton adresse ip (sur le web) et l'envoie aux bases de données de no-ip qui font la correspondance entre l'adresse (le nom) et ton adresse ip (les chiffres qui déterminenet ton adresse et qui change à chaque connexion (si tu n'as pas une ip Fixe...)).

Ensuite les visiteurs pourront taper, par exemple :

http://ericm.no-ip.org et ils arriveront sur ton server web sur ta machine. C'est du DynDns en réalité.

Dns : Domain Name System ( associe un nom de domaine a une ip)
Dyn : pour dynamique

Voilà avec ça ca devrait aller.

Note : si tu es derrière un routeur / firewall, il faut bien veiller à ouvrir le port adequat (à priori le 80 si c'est la configuration d'apache standard), en lui indiquant vers qu'elle ip (en local) il doit se diriger.
 
Il n'est pas possible d'utiliser le dossier "Sites" de mac osx pour qu'il soit accessible par un navigateur web ?

merci, je vais voir avec http://www.no-ip.com/

Eric
 
EricM a dit:
Il n'est pas possible d'utiliser le dossier "Sites" de mac osx pour qu'il soit accessible par un navigateur web ?
Eric


C'est précisemment las-bas que apache va voir ses sources (config standard). Et si tu veux pouvoir acceder à tes fichiers directement via une page Web (comme ds Finder), il y a des applet Java ou bien des script php ou bien encore d'autres solutions !!!
 
j'ai configuré mon compte sur http://www.no-ip.com/ et j'ai obtenu une adresse ericm59.no-ip.info (en .info ?) alors que tu avais indiqué une adresse en .com. Bon passons, c'est pas grave. Lorsque je tape http://ericm59.no-ip.info/ dans safari, je tombe sur la page de configuration de mon routeur SpeedTouch ethernet ADSL. J'ai aussi un routeur Linksys Wifi. Je ne comprens pas pourquoi c'est si compliqué !!!
je n'arrive pas à obtenir ma page html qui est dans mon dossier "Sites".

Eric
 
ce doit être parceque ton routeur ne permet pas le loopback. Il faut tester depuis un ordinateur extérieur à ton réseau
 
tu peux tester ?
 
Pour le .info c'est pas grave, moi j'avais eu un .org, un pote un .com, ca dépend ce qu'il leur reste :D


Sinon c'est embêtant qu'on tombe sur ton routeur lol xD vive la sécurité !!!


En fait il faudrait que tu dises à ton routeur de rediriger tout ce qu'il voit qui lui est adressé sur le port 80 vers ton ordinateur.

Je ne sais pas qu'elle modèle tu utilises, mais sur le mien j'ai une page 'Virtual Server'. Je coche la case 'Web Server' et j'indique a côte l'adresse de mon ordi en local ( 192.168.0.3 par exemple, le routeur etant 192.168.0.1))

Je sauve et puis c'est tout.


Voila :)
 
  • J’aime
Réactions: GrandGibus
Je viens d'essayer ton adresse, mais il n'y a pas de connexion
 
Par contre j'ai essayé d'utiliser le service Dynsys.org pour rediriger mon IP attribuée par Wanadoo sur l'adresse http://ericm5959.dyndns.org/~eric/. Tu peux essayer cette adresse STP ?
Merci