Behöver hjälp med Apache, PHP, MySQL på Mac OS X klient

Tråden skapades och har fått 15 svar. Det senaste inlägget skrevs .
1

Jag har i evigheter försökt få igång min webbplats som bygger på php samt mysql på min inbyggda apache webbserver.

Jag har försökt med alla tricks jag hittat på nätet, jag har försökt genom att ladda hem ett program vid namn MAMP, Navcat.. you name it.

Jag ger nu upp. Den här skiten funkar inte för vanliga användare.

Hur återställer jag allting (tar bort mysql 5.0 som jag laddat ned) samt också få tillbaka alla inställningar som de var innan jag började mecka?

All hjälp mottages tacksamt för snart åker macbook djäveln ut genom fönstret

Det är inte helt tydligt vad du har för problem men detta kanske kan hjälpa dig?

Om man mixtrar med httpd.conf är det lätt att en felskrivning gör att man inte kan starta Apache. Använd "sudo apachectl graceful" i terminalen så får man reda på vad som är fel.

Antar att det är OS X Klient smo syftas? Jag flyttade tråden från Server-forumet.

Om MAMP inte fungerar med en gång så är det något som är redigt skumt, för mig fungerar det klockrent.

Har du den medföljande webbservern (Personlig Webbdelning under Fildelning i Systeminställningar) aktiverad när du försöker köra MAMP? Iofs så kör MAMP som standard på andra portar än standardalternativen, men ändå.

dalailama - jag förstår dig. Det tog mig bra länge innan jag greppade det här med UNIX och Apache/PHP/MySQL. Finns många gamla trådar här på 99mac när jag svor över hur struligt allt var.

Till sist lärde jag mig och nu rockar det. Synd att det krävs så mycket kunskap för att man ska känna sig "hemma".

.

tack för alla uppmuntrande svar!

gällande frågorna:

1. "sudo apachectl graceful" ger följande svar: /usr/sbin/apachectl graceful: httpd gracefully restarted

2. Ja det är Os X client som åsyftas. ber om ursäkt och tack för hjälpen med att flytta tråden.

3. ja, personlig webdelning är startad.

Björnström, tack för ditt svar.. det skänker lite ljusning i eländet

Om det kan vara någon hjälp så får jag följande felmeddelanden i Mamp när jag försöker connecta via firefox, localhost:8888. "access denied. user root password: no" eller något liknande..

har försökt att reseta root passwordet både genom terminalen, Mamp samt navicat men jag får fortfarande samma meddelande. Det konstiga är att det fungerade på en god väns site men då fick jag istället inte igång MySQL-databasen. Jag importerade den via MAMP och det gick fint men sedan förstod jag inte hur jag skulle gå vidare eller hur jag skulle connecta mina php-sidor med databasen..

all hjälp och alla tips mottages tacksammast!

God natt

Testa följande:

1. Skriv "Sudo apachectl configtest" och då ska du få svaret "Syntax ok". Då vet vi att Apache inte har några konstiga inställningar som hindrar den från att jobba rätt.

2. Har du ställt in att Apache ska svara på port 8888?

3. Vilken DocumentRoot har du ställt in för Apache? Dvs varifrån ska den servera sidorna?

4. Vad ligger i den mapp du delar ut?

.

Ursprungligen av Björnström:

Testa följande:

1. Skriv "Sudo apachectl configtest" och då ska du få svaret "Syntax ok". Då vet vi att Apache inte har några konstiga inställningar som hindrar den från att jobba rätt.

2. Har du ställt in att Apache ska svara på port 8888?

3. Vilken DocumentRoot har du ställt in för Apache? Dvs varifrån ska den servera sidorna?

4. Vad ligger i den mapp du delar ut?

1. får följande: Processing config directory: /private/etc/httpd/users/*.conf
Processing config file: /private/etc/httpd/users/Dalailama.conf
[Fri Jun 8="8" 10:33:37 2007="2007"] [alert] httpd: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Syntax OK
localhost:~ Dalailama$

2. ja, via Mamp.

3. /program/mamp/htdocs

4. php-filer, css-filer samt biler. lade även min .Sql fil där. Jag köpte alltså denna webbplats ifrån en firma.

Öhm, låter inte det som att den använder configen för systemets Apache istället för MAMP's? Dessutom, följer apachectl med i MAMP? (jag har bara använt den medföljande grafiska kontrollpanelen, så jag vet inte)

Btw, SQL-filen ska importeras in i mySQL via t ex phpmyadmin. Det räcker alltså inte med att lägga den i roten för webbplatsen.

Men jag tycker att det här låter tokskumt. För när jag startar MAMP så får jag upp en safariruta med startsidan för just den servern, där det finns länkar till t ex phpmyadmin. Får du inte upp det alls?

.

Ursprungligen av irrelogical:

Öhm, låter inte det som att den använder configen för systemets Apache istället för MAMP's? Dessutom, följer apachectl med i MAMP? (jag har bara använt den medföljande grafiska kontrollpanelen, så jag vet inte)

Btw, SQL-filen ska importeras in i mySQL via t ex phpmyadmin. Det räcker alltså inte med att lägga den i roten för webbplatsen.

Men jag tycker att det här låter tokskumt. För när jag startar MAMP så får jag upp en safariruta med startsidan för just den servern, där det finns länkar till t ex phpmyadmin. Får du inte upp det alls?

Jo, det låter faktiskt som om den använder systemets apache istället för mamps. När jag försöker ansluta via navicat så kan jag nämligen bara ansluta till ordinarie port, 3306 och inte till mamps 8888.

SQL-filen är imporerad via phpmyadmin. När jag startar mamp så får jag också upp startsidan för mamp där jag får länkar till phpmyadmin etc.

Ursprungligen av dalailama:

SQL-filen är imporerad via phpmyadmin. När jag startar mamp så får jag också upp startsidan för mamp där jag får länkar till phpmyadmin etc.

Men då fungerar det ju! Du hade inte kunnat använda phmyadmin öht om inte php, mysql och apache hade fungerat.

Jag tror problemet sitter någonstans i php-scriptet och dess konfiguration för anslutningen till mySQL-databasen. Har du ställt om det så det stämmer med värdena som MAMP vill ha?

Edit: Pröva med att ställa in MAMP till standardportarna.

Ursprungligen av irrelogical:

Men då fungerar det ju! Du hade inte kunnat använda phmyadmin öht om inte php, mysql och apache hade fungerat.

Jag tror problemet sitter någonstans i php-scriptet och dess konfiguration för anslutningen till mySQL-databasen. Har du ställt om det så det stämmer med värdena som MAMP vill ha?

Edit: Pröva med att ställa in MAMP till standardportarna.

Ja, jag önskar att det fungerade men det är konstigt... jag får följande meddelande när jag drar igång Mamp:
f you can see this page, MAMP is installed on your Mac and everything is working!......
To connect to the MySQL Server from your own scripts use the following connection parameters:

Host: localhost
[Port: 3306]
User: root
Password: ********

men när jag försöker ansluta via firefox till localhost:3306 så hittar den inte sidan.
Om jag instället bara ansluter till localhost i firefox så kommer min hemsida fram (rätt titel osv) men det ger följande meddelande:

Access denied for user 'root'@'localhost' (using password: NO)

fattar inte hur jag skall gå vidare. Det känns ju som om jag når själva sidan men jag kommer ju inte in.. Jag har försökt att nollställa lösenordet via Mamp men då får jag beskedet att Mamp inte accepterar nollställda root lösenord. Jag har då försökt att göra detta genom navicat men då kan ju överhuvudtaget inte connecta till databasen, får bara följande felmeddelande:

Can´t connect to MySQL-server on 127.0.0.1 (61)

någon idé om hur jag går vidare?

edit: Jag såg nu att jag under systeminställningar längst ned under övrigt har en rubrik vid namn MySQL-server. när jag går in där så är servern ställd som stoppad. när jag startar den så kan jag ansluta via NaviCat via port 3306, dock ej till 8888 som MAMP är inställd på. Om jag då i firefox försöker ansluta till Localhost:3306 får jag följande meddelande:

you have chosen to open

which is a binary file from http://localhost:3306

fattar ärligt talat ingenting

Senast redigerat 2007-06-09 21:05

Vi måste reda ut ett par saker:

- Om du kan surfa in på port 8888 verkar ju webbservern Apache vara rätt inställd så ändra inte mer på den

- Du kan inte surfa in på en MySQL server! Firefox, Safari osv kan inte ansluta direkt till en MySQL server!

- MySQL är en databasserver. För att göra inställningar i den och ladda upp/ner nya databaser som du sen använder genom din hemsida finns ett par sätt. PHPMyAdmin är förinstallerat med din MAMP installation - hitta den och använd det webgränssnittet.

- Ett alternativ till PHPMyAdmin är att ladda ner MySQL Administrator - ett program som gör ungefär samma sak: http://dev.mysql.com/downloads/gui-tools/5.0.html

- Jag vet inte riktigt vad du ska använda databasen till men jag antar att du har någon slags webblösning du har köpt/laddat ner?

Ursprungligen av Björnström:

Vi måste reda ut ett par saker:

- Om du kan surfa in på port 8888 verkar ju webbservern Apache vara rätt inställd så ändra inte mer på den

- Du kan inte surfa in på en MySQL server! Firefox, Safari osv kan inte ansluta direkt till en MySQL server!

- MySQL är en databasserver. För att göra inställningar i den och ladda upp/ner nya databaser som du sen använder genom din hemsida finns ett par sätt. PHPMyAdmin är förinstallerat med din MAMP installation - hitta den och använd det webgränssnittet.

- Ett alternativ till PHPMyAdmin är att ladda ner MySQL Administrator - ett program som gör ungefär samma sak: http://dev.mysql.com/downloads/gui-tools/5.0.html

- Jag vet inte riktigt vad du ska använda databasen till men jag antar att du har någon slags webblösning du har köpt/laddat ner?

Ja, Apache verkar fungera. alltid något

Databasen skall användas till ett annonsforum, med andra ord skall annonser och dyl lagras i den. Jag skall prova med MYSQL Administrator men jag tvivlar på att det gör någon skillnad. Jag har ju redan laddat databasen i PHPMyAdmin men det verkar som om det körs två stycken MySQL servers på datorn. När mamp är inställd på standardportarna (8888 samt 8889) så kan jag nämligen inte ansluta till dessa via Navicat. Om jag däremot istället ansluter till 3306 så går det hur bra som helst..

Skumt, inte sant?

Citat:

Men MAMP kör MySQL på port 8889 om du inte ändrat det. Det kan vara så att du försökt installera MySQL separat och att det är den instansen som svarar på anropen. Se till att MAMPs MySQL är inställd på att köra på port 3306 eller ändra i scripten till att använda port 8889.

problemet är att det inte gör någon skillnad huruvida jag ändrar port i Mamp till 3306. Visst, då kan jag ansluta via navicat men trots att jag tar bort root-lösenordet så får jag fortfarande följande via firefox när jag försöker komma åt localhost:80, alltså webbservern (Access denied for user 'root'@'localhost' (using password: NO)
detta alltså trots att jag inte längre har något root lösenord.

När jag ansluter till navicat hittar jag inte heller databasen som jag laddat upp via phpmyadmin vilket gör att jag ännu mer tror att det körs två separata instanser av mysql på datorn.

Du nämnde att jag skulle ändra i scripten, vilka syftade du då på?

Men MAMP kör MySQL på port 8889 om du inte ändrat det. Det kan vara så att du försökt installera MySQL separat och att det är den instansen som svarar på anropen. Se till att MAMPs MySQL är inställd på att köra på port 3306 eller ändra i scripten till att använda port 8889.

  • Medlem
  • Karlskrona
  • 2007-06-11 12:30

Jag har aldrig använt MAMP, men borde du inte kunna kolla vilka processer som är igång, avsluta alla som heter något med mysql och sedan starta mysql igen? Då ska ju bara den vara igång, utan spökande processer.

Och ang root-lösenordet. Om jag inte missuppfattar dig, så har du missuppfattat det där lite. När du får "Access denied for user 'root'@'localhost' (using password: NO)" så är det när du försöker koppla upp dig mot Mysql, utan att ha angett lösenord. Exempelvis,
php: mysql_connect('localhost', 'root', ''); (testa med lösenordet som sista parameter)
shell: mysql -u root (testa mysql -u root -p lösenord)

Det är alltså lösenordet för root-användaren för mysql som syftas, INTE OS X. De är helt skilda från varandra.

Och som någon sa innan, 3306 är porten som mysql kör på. Eventuella scriptspråk (i detta fallet PHP) och andra som vill snacka med mysql använder denna porten för att koppla upp sig mot mysql. Du ska alltså inte surfa in på port 3306 för det kommer inte att fungera.
Webläsare >> Apache (localhost:80, eller var den nu ligger) >> php >> mysql (localhost:3306, eller motsvarande)

1
Bevaka tråden