{"id":1250,"date":"2025-09-13T16:54:53","date_gmt":"2025-09-13T14:54:53","guid":{"rendered":"https:\/\/pcmacb.de\/?page_id=1250"},"modified":"2025-09-14T13:14:44","modified_gmt":"2025-09-14T11:14:44","slug":"typo3","status":"publish","type":"page","link":"https:\/\/pcmacb.de\/?page_id=1250","title":{"rendered":"Typo3"},"content":{"rendered":"\n<p>Apache\/Nginx, mariadb(sql) und php8.x sind vorhanden<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>apt install php8.4 php8.4-cli php8.4-mysql php8.4-gd php8.4-xml php8.4-mbstring php8.4-intl php8.4-curl php8.4-zip unzip imagemagick\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>CREATE DATABASE typo3 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;\nCREATE USER 'typo3user'@'localhost' IDENTIFIED BY 'cOOl3sP4sSWort';\nGRANT ALL PRIVILEGES ON typo3.* TO 'typo3user'@'localhost';\nFLUSH PRIVILEGES;\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>cd \/var\/www\nmkdir t3za\nchown www-data t3za\/\ncd t3za\/\nsudo -u www-data composer create-project typo3\/cms-base-distribution typo3-site<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>mv typo3-site \/var\/www\/<\/code><\/pre>\n\n\n\n<p>just to be sure:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chown -R www-data:www-data \/var\/www\/typo3-site\nfind \/var\/www\/typo3-site -type d -exec chmod 755 {} \\;\nfind \/var\/www\/typo3-site -type f -exec chmod 644 {} \\;<\/code><\/pre>\n\n\n\n<p>Die Verzeichnis und Dateirechte sollten bei einem &#8222;normalen&#8220; Benutzer liegen, nicht bei www-data!<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chown -R sascha:sascha \/var\/www\/typo3-site<\/code><\/pre>\n\n\n\n<p>allerdings muss der Webserver in einigen Verzeichnissen Schreibrechte bekommen. Sie werden bei der Installation \u00fcber install.php angelegt, k\u00f6nnen aber auch vorher h\u00e4ndisch erstellt werden.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mkdir -p \/var\/www\/typo3-site\/public\/fileadmin \\\n         \/var\/www\/typo3-site\/public\/typo3conf \\\n         \/var\/www\/typo3-site\/public\/typo3temp \\\n         \/var\/www\/typo3-site\/var \\\n         \/var\/www\/typo3-site\/config<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>chown -R www-data:www-data \/var\/www\/typo3-site\/public\/fileadmin \\\n    \/var\/www\/typo3-site\/public\/typo3conf \\\n    \/var\/www\/typo3-site\/public\/typo3temp \\\n    \/var\/www\/typo3-site\/var \\\n    \/var\/www\/typo3-site\/config<\/code><\/pre>\n\n\n\n<p>Webserver einstellen:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano \/etc\/apache2\/sites-available\/typo3.conf<\/code><\/pre>\n\n\n\n<p>Um ein letsencrypt Zertifikat zu erstellen, muss Apache zun\u00e4chst reloaded werden &#8211; daf\u00fcr wird eine Dummy-Config erstellt:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>nano \/etc\/apache2\/sites-available\/typo3.conf<\/code><\/pre>\n\n\n\n<p>Inhalt:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;VirtualHost *:80>\n    ServerName typ3.pcmacb.de\n    DocumentRoot \/var\/www\/typo3-site\/public\n\n    &lt;Directory \/var\/www\/typo3-site\/public>\n        AllowOverride All\n        Require all granted\n    &lt;\/Directory>\n&lt;\/VirtualHost><\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>a2enmod typo3.conf\nsystemctl reload apache2 <\/code><\/pre>\n\n\n\n<p>nun kann das Zertifikat erstellt werden mit:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>certbot --apache --cert-name typo3.yourdomain.tld -d typo3.yourdomain.tld<\/code><\/pre>\n\n\n\n<p>und der Inhalt der Config Datei angepasst werden:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;VirtualHost *:80>\n    ServerName typo3.yourdomain.tld\n    ServerAlias www.typo3.yourdomain.tld\n\n    RewriteEngine On\n    RewriteCond %{HTTPS} off\n    RewriteRule ^ https:\/\/%{HTTP_HOST}%{REQUEST_URI} &#91;L,R=301]\n&lt;\/VirtualHost>\n\n&lt;VirtualHost *:443>\n    ServerName typo3.yourdomain.tld\n    ServerAlias www.typo3.yourdomain.tld\n\n    DocumentRoot \/var\/www\/typo3-site\/public\n\n    &lt;Directory \/var\/www\/typo3-site\/public>\n        AllowOverride All\n        Require all granted\n    &lt;\/Directory>\n\n    SSLEngine on\n    SSLCertificateFile \/etc\/letsencrypt\/live\/typo3.yourdomain.tld\/fullchain.pem\n    SSLCertificateKeyFile \/etc\/letsencrypt\/live\/typo3.yourdomain.tld\/privkey.pem\n&lt;\/VirtualHost><\/code><\/pre>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Apache\/Nginx, mariadb(sql) und php8.x sind vorhanden just to be sure: Die Verzeichnis und Dateirechte sollten bei einem &#8222;normalen&#8220; Benutzer liegen, nicht bei www-data! allerdings muss der Webserver in einigen Verzeichnissen Schreibrechte bekommen. Sie werden bei der Installation \u00fcber install.php angelegt, <a class=\"more-link\" href=\"https:\/\/pcmacb.de\/?page_id=1250\">weiterlesen&#8230;<\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"class_list":["post-1250","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/pcmacb.de\/index.php?rest_route=\/wp\/v2\/pages\/1250","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pcmacb.de\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/pcmacb.de\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/pcmacb.de\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/pcmacb.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1250"}],"version-history":[{"count":14,"href":"https:\/\/pcmacb.de\/index.php?rest_route=\/wp\/v2\/pages\/1250\/revisions"}],"predecessor-version":[{"id":1279,"href":"https:\/\/pcmacb.de\/index.php?rest_route=\/wp\/v2\/pages\/1250\/revisions\/1279"}],"wp:attachment":[{"href":"https:\/\/pcmacb.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1250"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}