Actions
Migration » History » Revision 1
Revision 1/82
| Next »
Benjamin Baer, 06.11.2022 18:51
Update Typo3 v8 > v9 > v10¶
Preparation Typo3 v8¶
- Update Extensions to avoid problems after update.
- The IG LDAP Extension is the most likely culprit, we recommend to update to version 3.6.0 (which is compatible for typo3 v8 - v10). (Warning: later versions had problem with our LDAP Server, do not install any newer version if not needed)
- Open the ldap 3.6 extension config dialog and save it, this prevents error after typo3 update to 9
- Check if login still works (if not, it is possible to create new local admin users via /typo3/install.php)
- Update QFQ
- The IG LDAP Extension is the most likely culprit, we recommend to update to version 3.6.0 (which is compatible for typo3 v8 - v10). (Warning: later versions had problem with our LDAP Server, do not install any newer version if not needed)
- To easily downgrade again:
- copy the entire `typo3conf` Folder and store it in a temporary folder.
- Backup the typo3 database
upgrade to newest version of Typo3 v9¶
- download 9.5.26
- replace symlink typo3_src
rm typo3_src ln -s /var/www/typo3_src-9.5.26/ typo3_src
- go to installtool: /typo3/install.php
- Run the upgrade wizard under menu "Upgrade"
- Whenever there is an option, choose the default (most of the time to not do it, like backward compability to typo3 7 etc.)
- Afterwards run the database analyzer and apply the changes
- Go to "Environment > Directory Status" and autofix problems (this should create .htaccess for page slugs)
- Flush Caches
- Try to login to the backend
- Update to the newest Version of uzh_cd: https://www.math.uzh.ch/repo/?dir=uzhcd/v9
- Please note changes that have to be made to the config:
- Remove all default js and css references for qfq, they are included now
- Rewrite cd.fullWidth.pidList = 5,10 to:
cd.fullWidth.pidList = 5 in tree.rootLineIds || 10 in tree.rootLineIds
- Please note changes that have to be made to the config:
- If not happened before, update QFQ: https://qfq.io/download/?dir=releases (at least v 22.10.1)
- Do not update ig_ldap past 3.6.0!
Upgrade to Typo3 v10¶
- download Typo3 v10
cd /var/www/ wget --content-disposition https://get.typo3.org/10.4.15 tar -xzf typo3_src-10.4.15.tar.gz rm typo3_src-10.4.15.tar.gz
- update reference index:
- “System” > “DB check” module and use the “Check and update global reference index” function.
- replace symlink
rm typo3_src ln -s /var/www/typo3_src-10.4.15/ typo3_src
- upgrade wizzard
- go install tool: /typo3/install.php
- upgrade > run upgrade wizard
- execute all except the ones that install extensions
- Analyze Database Structure > apply all changes
- Dump TCA
- clear caches
- Maintanance > Flush Cache
- delete the other temporary files, which TYPO3 saves in typo3temp/ by doing:
- Install tool > Maintanance > Remove Temporary Assets
- Go to "Environment > Directory Status" and autofix problems (this should create/update .htaccess for page slugs)
- Create a SiteConfiguration: typo3 Backend > Sites > New Configuration
- This is needed for slugs to work. Also you need to create a second language entry here, if you have a german/english site.
Nginx¶
NGinx does not read .htaccess files, so you need to manually add the config to your nginx sites. Here is an include:
# Compressing resource files will save bandwidth and so improve loading speed especially for users # with slower internet connections. TYPO3 can compress the .js and .css files for you. # *) Set $GLOBALS['TYPO3_CONF_VARS']['BE']['compressionLevel'] = 9 for the Backend # *) Set $GLOBALS['TYPO3_CONF_VARS']['FE']['compressionLevel'] = 9 together with the TypoScript properties # config.compressJs and config.compressCss for GZIP compression of Frontend JS and CSS files. location ~ \.js\.gzip$ { add_header Content-Encoding gzip; gzip off; types { text/javascript gzip; } } location ~ \.css\.gzip$ { add_header Content-Encoding gzip; gzip off; types { text/css gzip; } } # TYPO3 - Rule for versioned static files, configured through: # - $GLOBALS['TYPO3_CONF_VARS']['BE']['versionNumberInFilename'] # - $GLOBALS['TYPO3_CONF_VARS']['FE']['versionNumberInFilename'] if (!-e $request_filename) { rewrite ^/(.+)\.(\d+)\.(php|js|css|png|jpg|gif|gzip)$ /$1.$3 last; } # TYPO3 - Block access to composer files location ~* composer\.(?:json|lock) { deny all; } # TYPO3 - Block access to flexform files location ~* flexform[^.]*\.xml { deny all; } # TYPO3 - Block access to language files location ~* locallang[^.]*\.(?:xml|xlf)$ { deny all; } # TYPO3 - Block access to static typoscript files location ~* ext_conf_template\.txt|ext_typoscript_constants\.txt|ext_typoscript_setup\.txt { deny all; } # TYPO3 - Block access to miscellaneous protected files location ~* /.*\.(?:bak|co?nf|cfg|ya?ml|ts|typoscript|tsconfig|dist|fla|in[ci]|log|sh|sql|sqlite)$ { deny all; } # TYPO3 - Block access to recycler and temporary directories location ~ _(?:recycler|temp)_/ { deny all; } # TYPO3 - Block access to configuration files stored in fileadmin location ~ fileadmin/(?:templates)/.*\.(?:txt|ts|typoscript)$ { deny all; } # TYPO3 - Block access to libraries, source and temporary compiled data location ~ ^(?:vendor|typo3_src|typo3temp/var) { deny all; } # TYPO3 - Block access to protected extension directories location ~ (?:typo3conf/ext|typo3/sysext|typo3/ext)/[^/]+/(?:Configuration|Resources/Private|Tests?|Documentation|docs?)/ { deny all; } location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ [^/]\.php(/|$) { fastcgi_split_path_info ^(.+?\.php)(/.*)$; if (!-f $document_root$fastcgi_script_name) { return 404; } fastcgi_buffer_size 32k; fastcgi_buffers 8 16k; fastcgi_connect_timeout 240s; fastcgi_read_timeout 240s; fastcgi_send_timeout 240s; # this is the PHP-FPM upstream - see also: https://www.nginx.com/resources/wiki/start/topics/examples/phpfcgi/#connecting-nginx-to-php-fpm include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.4-fpm.sock; }
the fastcgi_pass needs to be edited, here it is for standard ubuntu 20.04 nginx server.
You can save this file to /etc/nginx/snippets/typo3.conf and include it in your site config via `include ../snippets/typo3.conf`
Updated by Benjamin Baer over 1 year ago · 1 revisions