Vinnaren i pepparkakshustävlingen!
2017-01-30, 07:08
  #1
Medlem
NineLightsOuts avatar
Tjena tjena, jag försöker få min webbserver att funka. Rättare sagt en fräsch Laravel-installation. Mitt OS är Ubuntu 16.04.

Detta har hänt:
1. Installerade apache, samt nytt Laravel-projekt, men inget funkade.
2. Jag terminalade linorna "chown -R www-data:www-data projektmapp" och "chmod 755 -R projektmapp". Efter det fungerade index-sidan.

När jag försöker besöka /login eller /register, står det typ sidan kan inte nås. Jag är ganska säker på att det har med rättigheter att göra. I sites-available finns projektmapp.conf i din har jag
Kod:
<Directory />
    AllowOverride All
</Directory>
Detta behövs för att tillåta .htaccess, eller?
Citera
2017-01-30, 07:29
  #2
Medlem
When6Loves9s avatar
Citat:
Ursprungligen postat av NineLightsOut
Tjena tjena, jag försöker få min webbserver att funka. Rättare sagt en fräsch Laravel-installation. Mitt OS är Ubuntu 16.04.

Detta har hänt:
1. Installerade apache, samt nytt Laravel-projekt, men inget funkade.
2. Jag terminalade linorna "chown -R www-data:www-data projektmapp" och "chmod 755 -R projektmapp". Efter det fungerade index-sidan.

När jag försöker besöka /login eller /register, står det typ sidan kan inte nås. Jag är ganska säker på att det har med rättigheter att göra. I sites-available finns projektmapp.conf i din har jag
Kod:
<Directory />
    AllowOverride All
</Directory>
Detta behövs för att tillåta .htaccess, eller?
Du får se till att konfigurera virtualhosts korrekt i apache.
Förstår inte riktigt vad du sysslar med men om du vill ha ett directory/mapp på din server ska du använda dig av konfigurationen under virtualhosts.

Typ såhär
Listen 80
Kod:
<VirtualHost *:80>
    DocumentRoot "/www/exempelsida1"
    ServerName www.mindomän.se

    # Other directives here
</VirtualHost>
Citera
2017-01-30, 07:32
  #3
Medlem
Börja använda Apache loggar - De brukar visa EXAKT vad som "gått fel" (och en massa annat intressant).
Citera
2017-01-30, 11:45
  #4
Medlem
Citat:
Ursprungligen postat av iconicatab
Börja använda Apache loggar - De brukar visa EXAKT vad som "gått fel" (och en massa annat intressant).

Det är ett bra tips, man hittar dem under /var/log/apache
Om du bara vill kolla i en logg (access.log och error.log om du inte definerat något annat) så kör du följande kommando:

less /var/log/apache/access.log eller error.log - Då kan du enkelt gå upp och ned med pilarna för att gå igenom din logg. Tryck på q när du är klar för att stänga less.

Vill du däremot kolla någon av loggarna i realtid så kör du följande kommando:

tail -f /var/log/apache/access.log eller error.log - Allt som sker i loggen kommer då att dyka upp direkt på skärmen. Tryck CTRL+C för att stänga tail.

Söker du efter något specifikt i loggen så kör du antingen grep eller egrep, tex följande kommando:

egrep "fil.html" /var/log/apache/access.log eller error.log - Då ser du allt som träffar ordet "fil.html".
//A
Citera
2017-01-30, 15:46
  #5
Medlem
NineLightsOuts avatar
Citat:
Ursprungligen postat av iconicatab
Börja använda Apache loggar - De brukar visa EXAKT vad som "gått fel" (och en massa annat intressant).

Citat:
Ursprungligen postat av az0r
Det är ett bra tips, man hittar dem under /var/log/apache
Om du bara vill kolla i en logg (access.log och error.log om du inte definerat något annat) så kör du följande kommando:

less /var/log/apache/access.log eller error.log - Då kan du enkelt gå upp och ned med pilarna för att gå igenom din logg. Tryck på q när du är klar för att stänga less.

Vill du däremot kolla någon av loggarna i realtid så kör du följande kommando:

tail -f /var/log/apache/access.log eller error.log - Allt som sker i loggen kommer då att dyka upp direkt på skärmen. Tryck CTRL+C för att stänga tail.

Söker du efter något specifikt i loggen så kör du antingen grep eller egrep, tex följande kommando:

egrep "fil.html" /var/log/apache/access.log eller error.log - Då ser du allt som träffar ordet "fil.html".
//A
Nice.

I error loggen står att läsa script '/var/www/projectname.com/public/wp-login.php' not found or unable to stat
och på raden under står det Graceful restart requested, doing restart.

Vad betyder det?
Citera
2017-01-30, 16:05
  #6
Medlem
Citat:
Ursprungligen postat av NineLightsOut
Nice.

I error loggen står att läsa script '/var/www/projectname.com/public/wp-login.php' not found or unable to stat
och på raden under står det Graceful restart requested, doing restart.

Vad betyder det?
Det sista är webbservertjänstens bekräftelse på att den uppfattat att 'någon' begärt en omstart av httpd.

Det föregående kommer från någon felinstallerad/felkonfad webbserverapplikation. Min gissning är att det handlar om wordpress om du har lagt dit det. Och om ett login-script fattas, så borde hela applikationen låta bli att starta.
Citera
2017-01-30, 16:17
  #7
Medlem
NineLightsOuts avatar
Citat:
Ursprungligen postat av iconicatab
Det sista är webbservertjänstens bekräftelse på att den uppfattat att 'någon' begärt en omstart av httpd.

Det föregående kommer från någon felinstallerad/felkonfad webbserverapplikation. Min gissning är att det handlar om wordpress om du har lagt dit det. Och om ett login-script fattas, så borde hela applikationen låta bli att starta.
Nej, usch, inte wordpress.

Det är Laravel. Efter googling verkar det vara .htaccess som inte skriver om (rewrite) som den ska. Hur ska det se ut i sites-available -filen?
Kod:
<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Require all granted
</Directory>
Citera
2017-01-30, 16:33
  #8
Medlem
Citat:
Ursprungligen postat av iconicatab
Det föregående kommer från någon felinstallerad/felkonfad webbserverapplikation. Min gissning är att det handlar om wordpress om du har lagt dit det. Och om ett login-script fattas, så borde hela applikationen låta bli att starta.

Citat:
Ursprungligen postat av NineLightsOut
Nej, usch, inte wordpress.
...

Då bör du kolla loggraden efter klockslag ip-adress och user-agent.
Står servern publikt? I.s.f är det nog en probe/scanning efter en dåligt uppdaterad wordpress att cracka.
Citera
2017-01-30, 21:21
  #9
Medlem
NineLightsOuts avatar
Citat:
Ursprungligen postat av iconicatab
Då bör du kolla loggraden efter klockslag ip-adress och user-agent.
Står servern publikt? I.s.f är det nog en probe/scanning efter en dåligt uppdaterad wordpress att cracka.
Först och främst, tack för hjälpen!

Jag ska förklara så långt jag typ fattar, så blir det kanske lättare att förklara. Filen login.php ligger såklart inte i mappen /public. I en MVC så läggs publika filer (och undermappar) i mappen /Public, dessa är exempelvis css, pictures och jquery. Och utöver det favicon, .htaccess och index.php.

Alla förfrågningar (requests) skrivs om med hjälp av .htaccess-filen. Detta är .htaccess som jag typ fattar (innan jag hittade Laravel gjorde jag nämligen en MVC själv och då såg .htaccess-filen såhär):
Kod:
RewriteEngine On
RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

Laravels .htaccess-fil ser något annorlunda ut men jag vet vad den gör.
Citera
2017-01-30, 22:04
  #10
Medlem
NineLightsOuts avatar
En uppdatering bara!

Nu efter vår diskussion hittade jag geniala kommandot sudo a2enmod rewrite, och nu börjar det hända grejer! Jag kommer till routen /login men innehållet har inte tillstånd (permission denied) att visas. Nu är det bara en tidsfråga innan vi löser detta.
Citera
2017-03-09, 11:52
  #11
Medlem
NineLightsOuts avatar
Såhär ska det se ut. Gå till din projektmapp, i mitt fall (var/www/html/)

Kolla vem som äger mappen:
ls -l

Man kan skapa grupper själv och man kan använda den grupp som följer med apache, nämligen www-data. Byt ägarskap så gruppen äger mappen och dess undermappar (-R betyder undermappar och filer).
sudo chown -R www-data:www-data projektmapp

Och nu kommer grädden på moset! Gruppen äger numera mappen men har inte rättigheter. Sätt detta med:
sudo chmod 770 -R projektmapp

Edit: Just det jävlar! vi måste lägga till oss själva i gruppen.
__________________
Senast redigerad av NineLightsOut 2017-03-09 kl. 11:56.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback