Hem Personliga finanser Vanliga PHP-konfigurationsändringar - dummies

Vanliga PHP-konfigurationsändringar - dummies

Innehållsförteckning:

Video: 3 "VANLIGA" DAGAR I MITT HEKTISKA LIV 2024

Video: 3 "VANLIGA" DAGAR I MITT HEKTISKA LIV 2024
Anonim

Följande är några vanliga PHP-konfigurationsändringar som du kanske Behovet av en server som kör PHP, inklusive hur man ändrar sessionsparametrar och inaktiverar funktioner och klasser.

Så här ändrar du PHP-sessionen timeout

När du använder sessioner för din applikation lagras data vanligtvis i filer på servern (även om detta också kan konfigureras i php. ini). Sessioner påverkas av en sopsamlingsprocess som rensar upp några döda sessioner, till exempel de som inte har använts under ett visst antal minuter.

Som standard ser sopsamlingsprocessen på sessioner med en livstid på 1, 440 sekunder. Det betyder att användaren behöver vara tomgångsläge i 1, 440 sekunder och vid nästa försök ska hans session kan eller kanske inte gå ut.

En vanlig förändring är den insamlingsprocessen, ty pically att förlänga den. Den här ändringen implementeras vanligtvis i hela serverns hela konfiguration men kan också gälla på platsnivå.

Php. Ini inställning för att styra detta beteende är

session. gc_maxlifetime = 1440

Så här ändrar du andra PHP-sessionsparametrar

Många andra parametrar kan ställas in för att styra hur sessioner beter sig. Saker som där sessionsfiler sparas på servern och om de använder cookies kan ändras. Några av de vanligaste ändringarna är att ställa in domänen för sessionskakan och namnet på sessionen.

Båda dessa är vanligtvis inställda på platsnivå. Standardvärdet för cookie_domänen är tomt, vilket återspeglas här:

session. namn = PHPSESSID-session. cookie_domain =

Så här inaktiverar du PHP-funktioner och klasser

Du kan använda php. ini för att inaktivera inbyggda funktioner eller klasser. Det kan hända att du inte vill att folk ska använda vissa PHP-funktioner eller att det kan uppstå ett säkerhetsproblem i en viss funktion. Under alla omständigheter kan du inaktivera funktionen eller klassen med hjälp av dessa direktiv:

disable_functions = disable_classes =

Varje funktion förväntar sig en kommaseparerad lista över funktioner eller klasser som ska inaktiveras. Du kanske till exempel vill inaktivera exec () -funktionen. Följande lista visar en enkel PHP-sida för att testa denna funktion.


n"; ? >

När du tittar i en webbläsare ser sidan ut så här:

Ändra php. ini för att inaktivera den funktionen innebär att använda detta direktiv:

disable_functions = exec

När Apache startas om, kommer ändringen att träda i kraft. Uppdateringen av sidan resulterar nu i varningen som visas.

Om du använder en värdleverantör kan exec () -funktionen redan vara inaktiverad. Du kan också inte se varningen om din PHP-konfiguration inte visar fel.

Så här ändrar du PHP-felindikering

Det finns flera konfigurationsdirektiv kring felindikatorn för PHP. Till exempel skulle en utvecklingsserver troligen visa fel hela tiden. Det här ställs in med display_errors-direktivet:

display_errors = På

En produktionsserver skulle sannolikt aldrig visa fel för användaren:

display_errors = Off

Ett relaterat direktiv är error_reporting direktivet. Detta komplexa direktiv informerar PHP om vad som ska visas för fel. Du kan konfigurera PHP för att rapportera endast fel som är dödliga eller du kan visa fler mindre fel som meddelanden.

Felsökningsdirektivet är något komplext. Se PHP. nät för mer information om du behöver ändra detta direktiv.

Så här ändrar du PHP-resursgränserna

Det finns tillfällen då du måste ändra den maximala tillåtna filstorleken, för när filen är mottagen via ett formulär POST eller laddat upp direkt eller mottaget på annat sätt helt och hållet. Direktivet Upload_max_filesize anger den maximala filstorleken som kan laddas upp medan Direktivet post_max_size anger maximal storlek på en blankett POST. Om du tillåter formulär att ladda upp filer är chansen att du måste ändra båda direktiven.

Dessutom kan du upptäcka att du måste ändra minnesgränserna som är införda på ett visst PHP-skript eller den exekveringstid som ett script körs. Om en användare till exempel laddar upp en stor fil kan det ta flera minuter. Memory_limit-direktivet anger hur mycket minne som kan användas av ett PHP-program, och direktivet max_execution_time anger hur länge ett program kan köras.

Du kan ändra den maximala tiden för ett skript genom att ändra max_execution_time i php. ini eller genom att använda funktionen set_time_limit () inom ett enskilt skript. Funktionen set_time_limit () är ett vanligt sätt att lösa problemet med ett långvarigt skript samtidigt som det övergripande värdet för max_execution_time-servern sparar hela servern.

Vanliga PHP-konfigurationsändringar - dummies

Redaktörens val

Justering och justering av text i Word 2016 - dummies

Justering och justering av text i Word 2016 - dummies

Styckejustering i Word 2016-dokument har ingenting att göra med politik, och motiveringen har lite att göra med anledningarna till att lägga text i en paragraf. Istället hänvisar båda termerna till hur styckets vänstra och högra kanter ser på en sida. De fyra alternativen är vänster, center, rätt och fullständigt motiverad, ...

Hur man gör två kolumntext i Word 2016 - dummies

Hur man gör två kolumntext i Word 2016 - dummies

När man vill imponera på någon Med din text i Word 2016 kan du försöka sätta två kolumner på din sida. Några fler kolumner, och textbredden är för mager och svår att läsa. Två kolumner är dock ett bra sätt att bli snyggare och förbli läsbara. Starta ett nytt dokument. Eller om du ...

Hur man gör mellanslag mellan stycken i Word 2010 - dummies

Hur man gör mellanslag mellan stycken i Word 2010 - dummies

När man skriver i Word 2010, du don Du måste inte trycka på Enter två gånger för att lägga till extra mellanrum mellan punkterna. Word kan lägga till det här rummet automatiskt:

Redaktörens val

Outlook 2013 Adressböcker - dummies

Outlook 2013 Adressböcker - dummies

Outlook 2013 använder fortfarande flera olika Adressböcker som verkligen ingår i Microsoft Exchange Server. Adressböckerna har flera separata, oberoende listor över namn och e-postadresser - det är ganska förvirrande. Microsoft förenklade problemet med att hantera adressböcker i Outlook 2002 och senare versioner, men det hjälper inte om du använder ...

Outlook 2016 s Kontakter Hem Tab - dummies

Outlook 2016 s Kontakter Hem Tab - dummies

Outlook 2016s Kontakter är mer än bara en lista med namn och e-postadresser. Du kan utnyttja fliken Kontakter hem i Outlook 2016-bandet för att skapa nya kontakter, för att ordna hur du visar kontakterna du har, eller för att skapa e-postmeddelanden eller sammanslagningsdokument. Följande bild visar ...

Outlook Web Access - dummies

Outlook Web Access - dummies

Outlook Web Access är en del av ett program som heter Microsoft Exchange, vilket många stora och icke- så stora organisationer kör till avancerade Outlook-funktioner som offentliga mappar, delade kalendrar och tilldelade uppgifter. Inte alla företag som använder Microsoft Exchange erbjuder Outlook Web Access, men om du gör det kan du logga in på Outlook från nästan ...

Redaktörens val

Polering Ditt utvecklingsverktyg för kakaoprogrammering - dummies

Polering Ditt utvecklingsverktyg för kakaoprogrammering - dummies

Kakao är en typ av programmering som du kan utföra med Apples Utvecklarverktyg. Kakao är en samling verktyg och bibliotek som låter dig få ut det mesta av Mac OS X-programmeringen. Många funktioner gör Cocoa bra, bland annat följande: Modulär objektorienterad design Användning av ramar Visual interface design Varför program med ...

Snabba typer - dummies

Snabba typer - dummies

Swifts hantering av typer liknar andra språk, men varje språk har olika inriktningar och regler. I allmänhet har dessa regler att göra med de sätt som skrivs måste genomföras i fall där det finns tvetydighet. Hur mycket kostar språket (eller dess kompilator eller runtime bibliotek) för att säkerställa typkompatibilitet? Swift's approach ...

Klasserna Anatomi av en Swift Class - dummies

Klasserna Anatomi av en Swift Class - dummies

ÄR hjärtat i något objektorienterat programmeringsspråk. Till skillnad från klasser i mål-C och några andra språk behöver Swifts klasser ingen rubrikdeklaration. I stället får du hela klassen (eller struktur eller uppräkning) definitionen i ett format som detta: klass MyClass {var storedNumber: Int = 0 init (myNumber storedNumber: Int) {self. storedNumber = storedNumber ...