What are the basics of web development

Web Development Basics

Transcript

1 Basics of Web Development Content Management Systems Thomas Walter Version 1.0

2 current 2

3 Content Management System Content Management System: CMS user-friendly and simple management of the content for large sites Editors without technical knowledge such as HTML uniform layout 3

4 Advantages of CMS Maintenance of the content without knowledge of HTML Layout is generated "automatically" Content data is reusable in databases Cross media publishing Management of the structure of the site Link management User and role concept Time-limited content Version management Multilingualism 4

5 more precise distinction CMS is often (but not necessary!) Used synonymously for Web Content Management System (WCMS) content is media-neutral in database Cross Media Publishing same digital source for web, pdf, print, 5

6 more precise distinction dynamic CMS creates new page with each call always up to date slower static CMS creates static deduction (staging server) in the file system more efficient, more stable, not up to date hybrid CMS hybrid 6

7 Components of CMS Typical components of a CMS are: persistent data management (RDBMS) import interface: web front end or other export interface: staging server or other workflow management user management layout management 7

8 exemplary architecture Harjo Korte, University of Osnabrück,

9 Overview of CMS There are innumerable useful CMSs: Comparing the CMS 9

10 10

11 11

12 popular CMS some very popular free CMS Drupal PHP5 Joomla! (formerly Mambo) PHP5 Plone Python TYPO3 PHP5 12

13 popular CMS some very popular commercial CMS Imperia (Imperia AG) Fiona (Infopark) Red Dot 13

14 the data backend CMS are often based on an RDBMS: MySQL MariaDB Postgres Oracle 14

15 the CMS TYPO3 1997: TYPO3 Kasper Skårhøj 2007: Michael Stucki t3pages.de 15

16 16

17 License see TYPO3 3.x and 4.x: GNU GPL 2 TYPO3 5.x: GNU GPL 3 17

18 TYPO3 architecture on the server side: PHP code RDBMS (MySQL) intermediate layer core functionality: authentication, framework, GUI, TYPO3 extension API backend (BE): admin, frontend (FE): the website 18

19 Galileo web design 19

20 20

21 current version current is TYPO (and 4.3.8) Security: use the latest version! in development 5 major changes here Replacement of TypoScript transition will be difficult 21

22 Installation what do we need for TYPO3? Server with operating system Apache web server PHP MySQL (or Postgres, Oracle, - TYPO3 uses DB abstraction layer) Image processing: ImageMagick, GD-Lib, 22

23 Installation Download from TYPO3.org: two packages are required: the TYPO3 source package an empty TYPO3 site: dummy the first package is sufficient for an update of an existing installation 23

24 24

25 Installation After unpacking, a practical installation script is available today: Tool called via index.php in the TYPO3 home folder 25

26 26

27 at the end of the script-controlled installation the database tables are generated 27

28 the actual configuration the actual configuration is in the file typo3conf / localconf.php 28

29 29

30 the actual configuration five sections of the configuration: GFX: graphic SYS: system administration (site name etc.) EXT: extensions BE: backend configuration FE: frontend configuration 30

31 Backend login By default, you log in to the backend via http: // / typo3 31

32 32

33 the data model TYPO3 manages content in a relational database database with approx. 36 tables, also storage in the file system fileadmin of TYPO3 for downloads, images, 33

34 34

35 Editor's View 35

36 TypoScript TypoScript: TYPO3's own configuration language TYPO3 controls the state of a site via PHP arrays Manipulation of these arrays via TypoScript Not a complete script language: description language for data structures Criticism of TYPO3, will be fundamentally changed in version 5 (Flow) 36

37 a TYPO3 site for a TYPO3 site, some components are required in the TYPO3 CMS: CSS for the basic formatting TYPO3 template with TypoScript HTML template to connect the content with the TYPO3 template 37

38 TYPO3 Extensions TYPO3 is modularly expandable by API Extensions of TYPO3: Extensions TER: TYPO3 Extensions Repository T3X: packed archive with TYPO3 Extension Extensions are installed via Admin-BE 38

39 some popular extensions tt_news: News (Uni Tü, ZDV,) templavoila: Design of TYPO3 templates realurl: Implementation of the URL: instead of index.php? Id = 28 correct URL phpmyadmin: Access to the database Pay attention to security 39

40 40

41 Installation of extensions 41

42 Frontend Editing Extension simulatebe: Linking frontend and backend 42

43 43

44 Disadvantages of TYPO3 TYPO3 is very complex and powerful, maybe too complex? Extensions are sometimes unstable, high demands on hardware security are not unproblematic TypoScript unpopular on all sides 44

45 a concrete example consists initially of two proxy servers (Apaches with mod_proxy) these distribute the requests to eight Apaches each on a virtual server and a total of two physical Apache with PHP and thus TYPO3 behind an HA MySQL solution and a central one nfs file system internal HeartBeat communication 45

46 46

47 the CMS behind it is based on TYPO3 4.2 to 4.4 DBMS: MySQL currently around 450 editors 47

48 Change of layout at the end of September 2010: introduction of new layout of the university new design on more than 1,000 pages, partly also new structure Changeover in 5 minutes realizes popular problem: the cache of the server and especially the client

49 Change layout 49

50 and now we have seen content management systems in general and TYPO3 specifically next: general information on software architectures for the web and the introduction to frameworks for efficient web development 50