Skocz do zawartości

Kurs Raspberry Pi, projekty - #5 - serwer www (PHP, MySQL)


Komentator

Pomocna odpowiedź

18 minut temu, Nikka napisał:

Nazwa zmieniona. Informacja ze strony: Forbidden. You don't have permission to access /index.html on this server.

Nie instalowałam Skypa ani innych programów -więc to chyba nie wina zajętego portu 80 jak gdzieś czytałam.

wykonaj instrukcje stąd https://www.digitalocean.com/community/questions/forbidden-you-don-t-have-permission-to-access-on-this-server-additionally-a-403-forbidden-error-was-encountered

a konkretnie:

For diagnostic correction, allow permission for all by typing:

sudo chmod -R 777 /path/to/index.html file/
and then;
sudo chown -R [username]:[group] /path/to/index.html file/

where username is the 'username' you use to login to the Droplet, and group will be www-data if your web server is Apache.

tylko (!!!) pamietaj ustaw swoje username 🙂 by je poznać mozesz wpisac w konsole 'whoami'

  • Lubię! 1
Link do komentarza
Share on other sites

Uprawnienia do pliku! Nadałaś prawo do odczytu pliku wyłącznie dla roota - nic dziwnego, że Apacz nie może go przeczytać. Zmień uprawnienia na 644 - czyli (oczywiście z właściwą ścieżką):

chmod 644 /tam/gdzie/mieszka/index.html

Ponadto warto zainteresować się tym, co Apacz wypluwa w logach. Będziesz tam miała pięknie wyjaśnione co się mu nie podoba.

@Treker - może warto byłoby w kursie wspomnieć o takim drobiazgu, że Apacz ma logi i gdzie one są?

  • Lubię! 1
Link do komentarza
Share on other sites

W tym przypadku problemem były uprawnienia, koledzy mnie już ubiegli. Muszę jednak sprawdzić temat dokładniej. O ile dobrze pamiętam, wykonując instrukcję dokładnie tak jak jest podana w kursie, nie trzeba było wtedy zmieniać żadnych uprawnień, aby uruchomić domyślną stronę Apache'a. Wszystko było gotowe zaraz po instalacji.

8 godzin temu, ethanak napisał:

@Treker - może warto byłoby w kursie wspomnieć o takim drobiazgu, że Apacz ma logi i gdzie one są?

Oczywiście dopisuję do listy zmian. Biorąc pod uwagę, że większość osób nie czyta nawet treści błędów pojawiających się w Arduino IDE, to obawiam się jednak, że tutaj samo wskazanie miejsca logów wiele nie pomoże. Jest raczej potrzebny osobny artykuł, który omówi najczęstsze problemy itd.

Link do komentarza
Share on other sites

Z błędami w Arduino IDE to zupełnie inna historia - domyślnie wyświetlanie błędów jest wyłączone, i tu niestety muszę zgodzić się (aczkolwiek niechętnie) z kolegą @es2 - biblioteki Arduino są nie tyle co spartolone, ale pisane po łebkach, co prawda ładnie się kompilują ale to tylko zasługa GCC, który co prawda wysyła ostrzeżenie, ale i tak kompiluje (z reguły) tak jak chciał autor - czyli po co poprawiać ostrzeżenia, jeśli można je ładnie ukryć i udawać że wszystko jest OK?

Jako zawodowy programista nie wyobrażam sobie pracy przy wyłączonych ostrzeżeniach kompilatora (o błędach już nie wspomnę). Jako (emerytowany) webmaster i (aktualny) admin takoż nie wyobrażam sobie pracy bez zaglądania w errorlogi Apacza czy przy wyłączonych powiadomieniach o błędach PHP. Tym bardziej początkujący powinni z tego korzystać...

Może - tak przy okazji - warto by było gdzieś w wielce widocznym miejscu umieścić informację "włącz powiadamianie o błędach w Arduino, albo kup sobie talię do Tarota i nie zawracaj głowy ludziom ma forum" 🙂

A osobny artykuł nie jest chyba potrzebny. Tyle że moim zdaniem artykuł o instalacji/używaniu Apacza, PHP, MySQL-a i w ogóle wszystkich fajnych lampianych rzeczy związanych z webem jest nieco zbyt krótki. W tej postaci jaka jest powinien być pierwszą częścią kursu zawierającego jakichś pięć odcinków...

Przepraszam za OT ale jakoś tak mi się napisało.

 

  • Lubię! 1
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

8 godzin temu, ethanak napisał:

Z błędami w Arduino IDE to zupełnie inna historia - domyślnie wyświetlanie błędów jest wyłączone

To racja, ale akurat pisząc o tym miałem przed oczami obraz tematów na Forbocie, w które ktoś wkleja kod błędu nawet go nie czytając, a jest tam dosłownie podane rozwiązanie problemu 😉

8 godzin temu, ethanak napisał:

Może - tak przy okazji - warto by było gdzieś w wielce widocznym miejscu umieścić informację "włącz powiadamianie o błędach w Arduino, albo kup sobie talię do Tarota i nie zawracaj głowy ludziom ma forum"

W planach jest cała mini-seria na ten temat. Od tego jak formatować kod i jak go "debugować", aż po najpopularniejsze błędy i rozwiązywanie problemów z wgrywaniem programów na klony włącznie 😉

8 godzin temu, ethanak napisał:

Tyle że moim zdaniem artykuł o instalacji/używaniu Apacza, PHP, MySQL-a i w ogóle wszystkich fajnych lampianych rzeczy związanych z webem jest nieco zbyt krótki. W tej postaci jaka jest powinien być pierwszą częścią kursu zawierającego jakichś pięć odcinków...

Dokładnie tak, całkowicie zgadzam się z tym, że to jest temat na mini-kurs/więcej artykułów. Akurat założeniem tej serii było, aby w stosunkowo niewielkiej liczbie artykułów opisać jak najwięcej zastosowań malinki - tak, aby każdy miał przegląd możliwości. Stąd ograniczanie materiałów. Z drugiej strony seria ta (na podstawie statystyk poczytności poszczególnych artykułów) pozwoli wybrać tematy na kolejne serie. Sam chętnie zająłbym się później szerzej tematem serwerów, bo można tutaj napisać jeszcze bardzo, bardzo dużo. Stąd wspomniałem o logach "w osobnym artykule", bo widziałem to jako część takiej mini serii związanej z www 😉

Link do komentarza
Share on other sites

Witam,
Mam następujące pytanie:
Jak zainstalować interpreter php na rpi?
Ponieważ: "sudo apt install php" zwraca mi "Nie udało się odnaleźć pakietu php".

Druga sprawa:
Zauważyłem błąd w rozszerzeniu pliku na początku kursu.

Na początku kursu tworzymy w przykładowym folderze "forbot" plik index.html, a w kodzie poniżej mamy
"sudo nano index.php"

Link do komentarza
Share on other sites

@Aiden_Pearce, witam na forum 😉 Widzę, że to Twoje pierwsze kroki na Forbocie, oto najważniejsze informacje na start:

  • Chcesz przywitać się z innymi członkami naszej społeczności? Skorzystaj z tematu powitania użytkowników.
  • Opis najciekawszych funkcji, które ułatwiają korzystanie z forum znajdziesz w temacie instrukcja korzystania z forum - co warto wiedzieć?
  • Poszczególne posty możesz oceniać (pozytywnie i negatywnie) za pomocą reakcji - ikona serca w prawym dolnym rogu każdej wiadomości.
6 godzin temu, Aiden_Pearce napisał:

Druga sprawa:
Zauważyłem błąd w rozszerzeniu pliku na początku kursu.

Na początku kursu tworzymy w przykładowym folderze "forbot" plik index.html, a w kodzie poniżej mamy
"sudo nano index.php"

Gratuluję czujności, faktycznie był tam błąd - poprawione🙂

Zrobiłem tutaj mały porządek ukrywając kilka postów w tym poniższy:

5 godzin temu, Belferek napisał:

Nie ma chyba sensu by się tu rozpisywać załóż google i zobacz "raspberry php7" - receptur jest cała masa.

Takie posty to zmora for. Rozumiem, że nie każdemu i w każdej sytuacji chce się pomagać, ale lepiej już sobie chyba darować takie posty 😉 Szczególnie, że pytanie o instalowanie php7 powstało przez to, że w ramach rozwiązania problemu został tu podlinkowany starty poradnik, który na sztywno "wymuszał" instalację php5.

Wracając jednak do meritum:

6 godzin temu, Aiden_Pearce napisał:

Jak zainstalować interpreter php na rpi?
Ponieważ: "sudo apt install php" zwraca mi "Nie udało się odnaleźć pakietu php".

Czy na pewno pracujesz na zaktualizowanym systemie i Raspberry Pi ma dostęp do internetu? Sprawdziłem instrukcję z artykułu i przed chwilą zainstalowałem podaną tam komendą PHP w wersji >7, bez żadnego problemu. Wszystko przebiegło sprawnie i php od razu zadziałało.

Link do komentarza
Share on other sites

Nie mam pod ręką Rpi ale mam Debiana, który jest podstawą dla Raspbiana. Chodzi o to, że używając w konsoli polecenia: sudo apt install php

odwołujesz się do pakietu php,  które to odwołanie powinno być jednoznaczne z najnowszą wersją tegoż php. Tak to wygląda np. w moim Debianie użycie apt show (man apt):

 sudo apt show php
Package: php
Version: 1:7.0+49
Priority: optional
Section: php
Source: php-defaults (49)
Maintainer: Debian PHP Maintainers <pkg-php-maint@lists.alioth.debian.org>
Installed-Size: 12,3 kB
Depends: php7.0
Download-Size: 5016 B
APT-Manual-Installed: yes
APT-Sources: http://ftp.pl.debian.org/debian stretch/main i386 Packages
Description: server-side, HTML-embedded scripting language (default)
 PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used
 open source general-purpose scripting language that is especially suited
 for web development and can be embedded into HTML.
 .
 This package is a dependency package, which depends on Debian's default
 PHP version (currently 7.0).

Raspbian umożliwia instalację pakietów w trybie graficznym. Moim zdaniem jest to łatwiejsza wersja instalacji. Uruchom menadżera pakietów w tym środowisku, zaktualizuj repozytoria, system i zobacz co program oferuje jeśli chodzi o instalację PHP.

Zawsze możesz zainstalować nowy system na karcie SD - działanie ekstremalne, lecz z reguły skuteczne do rozwiązywania problemów 🙂

Edytowano przez Belferek
Link do komentarza
Share on other sites

Nieśmiało przypominam o istnieniu polecenia "apt-cache" z bardzo fajnym parametrem "search"...

Przy okazji: aktualny (przykładowo) Jessie i aktualny Stretch to dwa różne światy... a oprócz nich istnieje jeszcze parę. Może zdradzisz nam tajemnicę, jaką masz wersję systemu? Podaj wynik:

lsb_release -a

 

  • Pomogłeś! 1
Link do komentarza
Share on other sites

Distributor ID: Raspbian
Description: Raspbian GNU/Linux 8.0 (jessie)
Release: 8.0
Codename: jessie

Edycja:

Okej. Problem rozwiązany.

Problemem był raspbian bazowany na debianie 8.
Reinstalacja OS naprawiła problem.

Edycja:

Rzecz, którą warto wiedzieć:
Kod php nie wykonuje się jeżeli jest w pliku *.html

Zainteresowanych rozwiązaniem odsyłam do poniższego artykułu:
https://stackoverflow.com/questions/17495382/apache-2-server-on-ubuntu-cant-parse-php-code-inside-html-file

 

Link do komentarza
Share on other sites

Można.
Jednakże ja wiem, że będzie mnie irytowało jak będę miał stronie z rozszerzeniem *.php,
oraz będzie mnie irytowało jak z przyzwyczajenia zapiszę stronę ze skryptem z rozszerzeniem .html i skrypt się nie wykona a ja będę się przez bliżej nieokreśloną ilość czasu zastanawiał co poszło nie tak.

Edytowano przez Aiden_Pearce
Link do komentarza
Share on other sites

Twój wybór no ale jak okiełznasz apache, html i php i zechcesz umieścić swoje skrypty php na zewnętrznym, komercyjnym serwerze HTTP z obsługą php to czy dostaniesz dostęp do plików konfiguracyjnych serwera? Może jednak lepiej od razu nazywać rzeczy po imieniu czyli np. index.php zamiast index.html? Przecież cały kod html dla przeglądarki wygenerujesz w php.

Jako ciekawostka - czy wiesz, że do uruchamiania skryptów php nie potrzebujesz serwera HTTP?

 

Edytowano przez Belferek
  • Lubię! 1
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.