En server är bara ett namn på en dator vars syfte är att tillhandahålla data till andra maskiner . Servern för en webbplats med PHP innehåll , till exempel , är en dator som skickar webbplatsens data till datorer som besöker denna hemsida . Operativsystem är precis som alla andra , inklusive användarbehörigheterna fil . Detta kan leda till " Permission denied " fel när ett PHP-skript försöker komma åt en fil med " get_file_contents ()" eller någon annan metod som läser filinformationen . System Användare
Alla moderna operativsystem har en multipel - användare arkitektur . Detta skyddar en användare från att ha en annan användare åtkomst sina filer och gör operativsystemet säkrare . Genom att begränsa vissa uppgifter till ett administratörskonto , virus som en tillfällig användare kan ladda ner har svårare att få kontroll över systemet . De maskiner som värd webbplatser med PHP operativsystem innehåll använder system som är optimerade för att fungera som servrar samtidigt begränsa användare från att komma åt filer som de inte har behörighet att öppna .
PHP Tolk
PHP är ett tolkat språk , vilket innebär att en server sammanställer sin källkod i realtid som en användare använder en fil med PHP källkod . Denna realtid sammanställa görs av PHP tolken . Tolken fungerar som alla andra mjukvara på servern , köra enligt ett visst system för användare med den användarens -tillstånd . Detta faktum kan leda till " Permission Denied " meddelanden när ett PHP-skript försöker komma åt en viss filens innehåll .
Proxymjukvara
Besökare på en webbplats interagerar inte direkt med källkoden filer på sin server . Snarare är deras ansökningar behandlas av proxyserver programvara . Denna programvara tar förfrågningar om data, såsom en viss webbsida , från användarna . Det sedan hämtar de uppgifter som de begärt från servern , och sedan skickar den tillbaka till användaren . När server administratörer konfigurera proxy programvara , kör det som en del av en viss användares konto . Proxy programvara för PHP-webbplatser kommer att engagera PHP tolken att köra PHP-kod , så att PHP tolken kommer att arbeta under samma användarkonto som kör proxy programvara .
Behörigheter
p Om ett PHP-skript försöker komma åt en fil som användarkontot som kör proxymjukvaran inte äger , eller inte har behörighet att öppna , då PHP kommer tillbaka en " Permission Denied " felmeddelande . Webbutvecklare kan åtgärda det här felet genom att ändra filens ägare till det konto som kör proxy programvara . De kan också skapa en ny användargrupp som innehåller både det konto som äger filen och det konto som kör proxy programvara , ställ sedan in filen för att låta någon i den gruppen öppna den . Båda metoderna kommer att lösa problemet .