Access denied för symboliska länken i XAMPP

  • Författare
  • Meddelande

ankd16

buggfixare

  • Inlägg: 145
  • Blev medlem: 04 jan 2016, 14:36
  • Ort: Stockholm

Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 11:50

Hallå! Ankan här,

Fick igång min lokala server med XAMPP fint, gjorde test.php och test.html och de funkar. Jag lyckades även med kommandot mklink, i min htdocs mapp ser det nu ut som såhär.

Mitt problem är att när jag går in på localhost:8080/dbwebb får jag följande felmeddelande:

Åtkomst förbjuden!

Du har inte tillräckliga rättigheter för att få tillgång till den önskade katalogen. Det existerar inget indexdokument eller så är katalogen lässkyddad.

Om du tror att detta beror på ett serverfel, vänligen kontakta webbansvarig.
Error 403
localhost
Apache/2.4.17 (Win32) OpenSSL/1.0.2d PHP/5.6.15


På internet har jag hittat några trådar om detta, och efter vad jag förstått måste jag ändra rättigheterna på mappen. Men vilken mapp? dbwebb-mappen? Hela htdocs? Och hur gör jag det? Är det det som är chmod, och vad betyder siffrorna efter? Och slutligen, hur kan jag se vad en mapp har för rättigheter och inte?

Tack på förhand! :)
/Andreas
Användarvisningsbild

thulin

troubleshooter

  • Inlägg: 514
  • Blev medlem: 30 dec 2015, 15:33
  • Ort: Skurup

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 12:03

Direkt fråga! Existerar det ett index-dokument i den mappen du länkar till?

Dvs index.php/index.html, för gör det inte det så måste du troligtvis peka ut filen du vill öppna (t.ex. me.php)

Det är en inställning i apache som gör att om man går till en "mapp" så antingen visas de filer som finns där i (i en trädstruktur), eller så får du ett error för att du inte pekat ut en fil själv
/Thulin
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11051
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 12:35

Jag dubbelkollade.

Jag öppnade en command prompt som admin och skrev:
Kod: Markera allt
mklink /D c:\xampp\htdocs\dbwebb %USERPROFILE%\dbwebb-kurser


För att dubbelkolla att länken var korrekt så gör jag dir på den.
Kod: Markera allt
mikae@DESKTOP-C3SVUSV C:\Users\mikae
$ dir c:\xampp\htdocs\dbwebb
Volume in drive C has no label.
Volume Serial Number is CE30-C50B

Directory of c:\xampp\htdocs\dbwebb

2015-12-22  19:13    <DIR>          .
2015-12-22  19:13    <DIR>          ..
2015-12-22  19:08    <DIR>          dbwebb-cli
2015-12-22  19:14    <DIR>          htmlphp
2015-12-09  12:26    <DIR>          webapp
               0 File(s)              0 bytes
               5 Dir(s)  49 291 350 016 bytes free


Det stämmer med de kataloger/filer jag har i min mapp.

När jag öppnar XAMPP så får jag en webbsida som visar texten.
Index of /dbwebb
[ICO] Name Last modified Size Description
[PARENTDIR] Parent Directory -
[DIR] dbwebb-cli/ 2015-12-22 19:08 -
[DIR] htmlphp/ 2015-12-22 19:14 -
[DIR] webapp/ 2015-12-09 12:26 -
Apache/2.4.16 (Win32) OpenSSL/1.0.1p PHP/5.6.12 Server at localhost Port 80


Dubbelkolla att din länk leder till rätt katalog, så vi vet att länken blev korrekt.
...
..:
.... /mos

ankd16

buggfixare

  • Inlägg: 145
  • Blev medlem: 04 jan 2016, 14:36
  • Ort: Stockholm

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 16:11

Snabba svar, tack! Tyvärr var jag inte lika snabb, men nej thulin, i min dbwebb mapp har jag ingen index-fil, det enda jag har är en mapp som heter "python".

När jag står i htdocs (c:\xampp\htdocs) ser jag dbwebb, den har typen <SYMLINK> och pekar på C:\cygwin\home\Andreas\dbwebb-kurser, vilket är korrekt sökväg. När jag då kör "dir dbwebb" ser det ut såhär.

Länken tycks alltså vara korrekt, så det bör snarare vara något med rättigheter på mappen, alternativt det där om index-fil.
Användarvisningsbild

thulin

troubleshooter

  • Inlägg: 514
  • Blev medlem: 30 dec 2015, 15:33
  • Ort: Skurup

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 16:29

Testa att lägga en av dina test.php/test.html där, och surfa till localhost:8080/dbwebb/test.php och/eller test.html

Om det funkar så döp om test.php till index.php och gå direkt till localhost:8080/dbwebb

Hur fungerar dessa två förslag?

edit: la till portnummer så det stämmer för dig
Senast redigerad av thulin 22 jan 2016, 16:34, redigerad totalt 1 gång.
/Thulin
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11051
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 16:30

(lite sen... :)

Testa genom att lägga en fil direkt i mappen och accessa den via webbläsaren.

Om du kommer åt filens innehåll så är det en inställning i XAMPPs configfiler som gör att du inte kan visa innehållet i en katalog.

Kolla, så får vi laga vid behov.
...
..:
.... /mos

ankd16

buggfixare

  • Inlägg: 145
  • Blev medlem: 04 jan 2016, 14:36
  • Ort: Stockholm

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 16:50

Gjorde som ni sade, lade till test.html i "dbwebb-kurser"-mappen och surfade in på localhost:8080/dbwebb/test. Fick tyvärr samma svar, dvs. "åtkomst förbjuden"... :/
Användarvisningsbild

thulin

troubleshooter

  • Inlägg: 514
  • Blev medlem: 30 dec 2015, 15:33
  • Ort: Skurup

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 16:51

test.html bör det vara, tror inte apache klurar ut det utan filändelse,
/Thulin

ankd16

buggfixare

  • Inlägg: 145
  • Blev medlem: 04 jan 2016, 14:36
  • Ort: Stockholm

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 17:41

Ah sorry, glömde säga att jag inte visste så testade båda. Dvs varken /test eller /test.html funkar...

ankd16

buggfixare

  • Inlägg: 145
  • Blev medlem: 04 jan 2016, 14:36
  • Ort: Stockholm

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 21:59

Okej så jag har fortfarande problem. Jag har testat en del grejer. Iakttagelser:

För det första, när jag byter namn på test.html och test.php till index.php och index.html får jag ett annat felmeddelande än jag fick tidigare. Nämligen:

Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0

Fatal error: Unknown: Failed opening required 'C:/xampp/htdocs/dbwebb/index.php' (include_path='.;C:\xampp\php\PEAR') in Unknown on line 0


När filerna heter test.html och test.php eller vad som helst förutom index får jag följande felmeddelande:

Åtkomst förbjuden!

Du har inte tillräckliga rättigheter för att få tillgång till den önskade katalogen. Det existerar inget indexdokument eller så är katalogen lässkyddad.

Om du tror att detta beror på ett serverfel, vänligen kontakta webbansvarig.
Error 403
localhost
Apache/2.4.17 (Win32) OpenSSL/1.0.2d PHP/5.6.15


Så på något sätt finns det en skillnad på om filen heter index elelr ej. Hur, och framför allt varför, vet jag inte.

På ett flertal ställen på internet har jag i trådar osv. sett folk säga att man behöver ändra rättigheterna på mappen ovanför till chmod 777 (ibland skriver de chmod 775). Jag har testat detta på både htdocs mappen och även den mapp den symboliska länken pekar på. Vid det här laget har nog alla fullständiga rättigheter till allting... spännande!

Någon som har en idé på hur jag kan gå vidare?

Tittade lite i httpd.conf-filen där det stod följande rad:

#
# Deny access to the entirety of your server's filesystem. You must
# explicitly permit access to web content directories in other
# <Directory> blocks below.
#
<Directory />
AllowOverride none
Require all denied
</Directory>


Detta känns ju möjligtvis som något som kan vara intressant för mig?
Användarvisningsbild

thulin

troubleshooter

  • Inlägg: 514
  • Blev medlem: 30 dec 2015, 15:33
  • Ort: Skurup

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 22:19

Får du samma fel, dvs det här:
Kod: Markera allt
Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0

Fatal error: Unknown: Failed opening required 'C:/xampp/htdocs/dbwebb/index.php' (include_path='.;C:\xampp\php\PEAR') in Unknown on line 0


även med index.html?

Det där felmeddelandet ser nämligen väldigt PHP-specifikt ut, dvs att den försöker göra nåt med C:\xampp\php\PEAR....

edit:
Jag kollade i min httpd.conf, samma rader, samma innehåll:
Kod: Markera allt
#
# Deny access to the entirety of your server's filesystem. You must
# explicitly permit access to web content directories in other
# <Directory> blocks below.
#
<Directory />
    AllowOverride none
    Require all denied
</Directory>


edit2:
Här är raden som förklarar varför det är skillnad på om filen heter test.php eller index.php:
Kod: Markera allt
#
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
<IfModule dir_module>
    DirectoryIndex index.php index.pl index.cgi index.asp index.shtml index.html index.htm \
                   default.php default.pl default.cgi default.asp default.shtml default.html default.htm \
                   home.php home.pl home.cgi home.asp home.shtml home.html home.htm
</IfModule>


Min tolkning, OM du försöker komma åt en directory, dvs "localhost:8080/dbwebb", så är det någon av filerna ovan som du får av Apache. Dvs om index.php ligger i mappen så är det "localhost:8080/dbwebb/index.php som du ser, det är därför du får olika meddelanden.
/Thulin
Användarvisningsbild

mos

dbwebb

  • Inlägg: 11051
  • Blev medlem: 10 nov 2011, 09:52
  • Ort: Ronneby / Bankeryd

Re: Access denied för symboliska länken i XAMPP

Inlägg22 jan 2016, 23:24

Så här ser den sekvens ut i Apaches config-fil som styr.
Kod: Markera allt
DocumentRoot "C:/xampp/htdocs"
<Directory "C:/xampp/htdocs">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.4/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks Includes ExecCGI

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   AllowOverride FileInfo AuthConfig Limit
    #
    AllowOverride All

    #
    # Controls who can get stuff from this server.
    #
    Require all granted
</Directory>


Den bör se likadan ut för dig. Jag kan inte minnas att jag ändrat i den.

Du gjorde en MKLINK till en path i Cygwin, jag kan inte se varför det kan vara ett bekymmer, men pröva att göra en MKLINK till an annan katalog som ligger i samma filsystem där du har installerat xampp. Bara för att dubbelkolla.
...
..:
.... /mos

ankd16

buggfixare

  • Inlägg: 145
  • Blev medlem: 04 jan 2016, 14:36
  • Ort: Stockholm

Re: Access denied för symboliska länken i XAMPP

Inlägg23 jan 2016, 00:19

thulin:

Detta felmeddelande:
Kod: Markera allt
Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0

Fatal error: Unknown: Failed opening required 'C:/xampp/htdocs/dbwebb/index.php' (include_path='.;C:\xampp\php\PEAR') in Unknown on line 0


Får jag när jag går in på localhost:8080/dbwebb
Går jag istället in på localhost:8080/dbwebb/index.html (eller index.php eller bara index) får jag samma fel som förut, dvs.

Kod: Markera allt
Åtkomst förbjuden!

Du har inte tillräckliga rättigheter för att få tillgång till det önskade objektet. Objektet är lässkyddat eller inte läsbart för servern.

Om du tror att detta beror på ett serverfel, vänligen kontakta webbansvarig.
Error 403
localhost
Apache/2.4.17 (Win32) OpenSSL/1.0.2d PHP/5.6.15


mos: Kollade samma rader i min "httpd.conf" fil och de är identiska till din. För övrigt kan jag säga att det enda jag ändrade i config-filen är Listen från 80 till 8080.

Till det andra. Jag gjorde en ny mapp i C: (det är där xampp ligger), döpte den till "mklinktest" och lade i den mappen min index.html-fil. Gick in i xampp/htdocs och körde

Kod: Markera allt
mklink mklinktest c:\mklinktest


Ta mig tusan att det nu fungerar när jag går in på localhost:8080/mklinktest (utan att skriva /index dock, då får jag fortfarande åtkomst förbjuden-meddelande), men varför det funkar nu och inte gjorde det förut vore intressant att veta. Och hur kan jag nu göra för att länka till min hemkatalog i cygwin? Blir ett väldigt pillande och klurande att flytta min dbwebb-kurser-mapp till utanför cygwin...

Funkar! :) :) :)

ankd16

buggfixare

  • Inlägg: 145
  • Blev medlem: 04 jan 2016, 14:36
  • Ort: Stockholm

Re: Access denied för symboliska länken i XAMPP

Inlägg23 jan 2016, 12:39

Nu fick jag det att funka när den länkade till cygwin. Hade både en index.html och index.php fil, när jag ändrade index.php till ett annat namn kunde jag gå in på localhost:8080/dbwebb. Testade även att i min mklinktest-mapp kopiera och klistra in index.php under den redan existerande index.html och fick då error:

Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0

Fatal error: Unknown: Failed opening required 'C:/xampp/htdocs/mklinktest/index.php' (include_path='.;C:\xampp\php\PEAR') in Unknown on line 0


Verkar som att den varningen är när man har mer än en index-sida, men jag vet inte. Huvudsaken är att nu verkar det löst. Hoppas jag i alla fall. :?
Användarvisningsbild

emsa16

troubleshooter

  • Inlägg: 185
  • Blev medlem: 31 dec 2015, 10:29

Re: Access denied för symboliska länken i XAMPP

Inlägg18 jan 2017, 16:00

Jag hade samma problem idag. Efter en del letande kom jag fram till att problemet låg i att jag har mitt kursrepo inuti min Dropbox-mapp, och dess rättigheter gav ägaren full tillgång men inga rättigheter alls åt någon annan (rwx------). Jag ändrade rättigheterna så att alla andra också har möjlighet att läsa och öppna filerna (rwxr-xr-x). Efter det funkade det till slut. Det gäller samma rättigheter för andra mappar i hem-mappen såsom Dokument, Musik, Filmer etc., åtminstone i Mac OS X. Så om någon annan har problem med detta, kolla upp rättigheterna för alla mappar som leder fram till ert kursrepo om ni vill ha tillgång till den på servern.

Vilka är online

Användare som besöker denna kategori: Bing [Bot] och 13 gäster