Hvilke tekniske detaljer bør en programmerer av en webapplikasjon vurdere før nettstedet offentliggjøres?
Hva bør en programmerer som implementerer de tekniske detaljene i en webapplikasjon tenke på før nettstedet offentliggjøres? Hvis Jeff Atwood kan glemme HttpOnly-cookies, sitemaps, og cross-site request forgeries alle på samme nettsted, hvilke viktige ting kan jeg også glemme?
Jeg tenker på dette fra en webutviklers perspektiv, slik at noen andre lager selve designet og innholdet på nettstedet. Så selv om brukervennlighet og innhold kan være viktigere enn plattformen, har du som programmerer lite å si på det. Det du trenger å bekymre deg for, er at implementeringen av plattformen er stabil, fungerer godt, er sikker og oppfyller eventuelle andre forretningsmål (som å ikke koste for mye, ta for lang tid å bygge og rangere like godt hos Google som innholdet støtter).
Tenk på dette fra perspektivet til en utvikler som har jobbet litt med intranett-applikasjoner i et ganske betrodd miljø, og som nå skal prøve seg på å lage et potensielt populært nettsted for hele det store, stygge nettet.
Dessuten er jeg på utkikk etter noe mer spesifikt enn bare et vagt "webstandarder" svar. Jeg mener, HTML, JavaScript og CSS over HTTP er stort sett en selvfølge, spesielt når jeg allerede har spesifisert at du er en profesjonell webutvikler. Så utover det, hvilke standarder? Under hvilke omstendigheter, og hvorfor? **Oppgi en lenke til standardens spesifikasjon.
Tanken her er at de fleste av oss allerede burde kjenne til det meste av det som står på denne listen. Men det kan være ett eller to punkter du ikke har satt deg inn i før, ikke helt forstår eller kanskje aldri har hørt om. **Grensesnitt og brukeropplevelse
rel="nofollow"
til brukergenererte lenker for å unngå spam.rel="noopener noreferrer"
på alle brukerleverte lenker medtarget="_blank"
for å forhindre at JavaScript på destinasjonssiden omdirigerer siden din til et annet sted, for eksempel en falsk påloggingsside. Mer informasjonfavicon.ico
-fil i roten av nettstedet, dvs./favicon.ico
. Nettlesere vil automatisk be om det, selv om ikonet ikke er nevnt i HTML i det hele tatt. Hvis du ikke har en/favicon.ico
, vil dette resultere i mange 404-er, noe som tapper serverens båndbredde. SEO (optimalisering for søkemotorer).example.com/pages/45-article-title
i stedet forexample.com/index.php?page=45
.#
for dynamisk innhold, endrer du#
til#!
, og på serveren bruker googlebot$_REQUEST["_escaped_fragment_"]
i stedet for#!
. Med andre ord blir./#!page=1
til./?_escaped_fragments_=page=1
. For brukere som kanskje bruker FF.b4 eller Chromium, erhistory.pushState({"foo":"bar"}, "About", "./?page=1");
en flott kommando. Så selv om adresselinjen er endret, lastes ikke siden inn på nytt. Dette gjør at du kan bruke?
i stedet for#!
for å beholde dynamisk innhold og også fortelle serveren når du sender lenken via e-post at vi er etter denne siden, og AJAX trenger ikke å gjøre en ekstra forespørsel./sitemap.xml
.301 Moved Permanently
) som ber omwww.example.com
tilexample.com
(eller omvendt) for å unngå å splitte Google-rankingen mellom de to nettstedene.