IDE:Neos: Unterschied zwischen den Versionen
// via Wikitext Extension for VSCode |
// via Wikitext Extension for VSCode |
||
| (Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
| Zeile 5: | Zeile 5: | ||
=== Schritte === | === Schritte === | ||
<ol> | <ol> | ||
<li>Als Benutzer <code>postgres</code> anmelden: | <li><b>Als Benutzer <code>postgres</code> anmelden:</b> | ||
<pre> | <pre> | ||
sudo -u postgres -i | sudo -u postgres -i | ||
</pre> | </pre> | ||
Dadurch wechselst du zum Datenbank-Benutzer <code>postgres</code>, um Datenbankbefehle auszuführen. | |||
</li> | </li> | ||
<li>Neue Datenbank für Neos anlegen: | |||
<li><b>Neue Datenbank für Neos anlegen:</b> | |||
<pre> | <pre> | ||
createdb -E UTF8 -O thorsten neos | createdb -E UTF8 -O thorsten neos | ||
exit | exit | ||
</pre> | </pre> | ||
Erstellt eine neue PostgreSQL-Datenbank namens <code>neos</code> mit UTF8-Kodierung und dem Eigentümer <code>thorsten</code>. Mit <code>exit</code> verlässt du den <code>postgres</code>-Benutzer. | |||
</li> | </li> | ||
<li>Ins Webverzeichnis wechseln und Ordner für Neos erstellen: | |||
<li><b>Ins Webverzeichnis wechseln und Ordner für Neos erstellen:</b> | |||
<pre> | <pre> | ||
cd /var/www | cd /var/www | ||
| Zeile 22: | Zeile 26: | ||
sudo chmod 777 -R neos | sudo chmod 777 -R neos | ||
</pre> | </pre> | ||
Wechselt ins Webverzeichnis, erstellt einen Ordner <code>neos</code> und gibt allen Nutzern Schreibrechte (für Entwicklung geeignet, für Produktion restriktiver setzen). | |||
</li> | </li> | ||
<li>Neos mit Composer installieren: | |||
<li><b>Neos mit Composer installieren:</b> | |||
<pre> | <pre> | ||
composer create-project neos/neos-base-distribution:^8.0 neos | composer create-project neos/neos-base-distribution:^8.0 neos | ||
</pre> | </pre> | ||
Lädt die aktuelle Neos-Basisdistribution in den Ordner <code>neos</code> mit Composer. | |||
</li> | </li> | ||
<li>In das Neos-Verzeichnis wechseln und Setup ausführen: | |||
<li><b>In das Neos-Verzeichnis wechseln und Setup ausführen:</b> | |||
<pre> | <pre> | ||
cd neos | cd neos | ||
./flow setup:database | sudo ./flow setup:database | ||
./flow doctrine:migrate | |||
./flow user:create --roles Administrator | |||
./flow site:create | |||
./flow kickstart:site Vendor.Site | |||
./flow site:import --package-key Vendor.Site | |||
./flow setup | ./flow setup | ||
./flow server:run | |||
</pre> | </pre> | ||
<ul> | |||
<li><code>./flow setup:database</code>: Datenbankverbindung konfigurieren.</li> | |||
<li><code>./flow doctrine:migrate</code>: Datenbankschema anlegen.</li> | |||
<li><code>./flow user:create --roles Administrator</code>: Admin-Benutzer erstellen.</li> | |||
<li><code>./flow site:create</code>: Leeres Site-Paket erstellen.</li> | |||
<li><code>./flow kickstart:site Vendor.Site</code>: Beispiel-Site-Paket generieren.</li> | |||
<li><code>./flow site:import --package-key Vendor.Site</code>: Site-Paket importieren.</li> | |||
<li><code>./flow setup</code>: Neos-Grundsetup ausführen.</li> | |||
<li><code>./flow server:run</code>: Entwicklungsserver starten (http://localhost:8081).</li> | |||
</ul> | |||
</li> | </li> | ||
</ol> | </ol> | ||
''Hinweis: Die Befehle müssen mit entsprechenden Rechten ausgeführt werden. Composer muss installiert sein.'' | ''Hinweis: Die Befehle müssen mit entsprechenden Rechten ausgeführt werden. Composer muss installiert sein.'' | ||
Dauer Lauft | |||
=== Nginx-Konfiguration === | |||
Um Neos über Nginx bereitzustellen, bearbeite die Konfigurationsdatei: | |||
<pre> | |||
sudo nano /etc/nginx/conf.d/neos.conf | |||
</pre> | |||
Trage dort die passenden Einstellungen für dein Projekt ein. | |||
<pre> | |||
server { | |||
listen 80; | |||
server_name daniel.lienert.cc; | |||
root /your/htdocs/Neos/Web/; | |||
index index.php; | |||
location ~ /_Resources/ { | |||
access_log off; | |||
log_not_found off; | |||
expires max; | |||
if (!-f $request_filename) { | |||
rewrite "/_Resources/Persistent/([a-z0-9]{40})/.+\.(.+)" /_Resources/Persistent/$1.$2 break; | |||
rewrite "/_Resources/Persistent(?>/[a-z0-9]{5}){8}/([a-f0-9]{40})/.+\.(.+)" /_Resources/Persistent/$1.$2 break; | |||
} | |||
} | |||
location / { | |||
try_files $uri $uri/ /index.php?$args; | |||
} | |||
# Pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 | |||
location ~ \.php$ { | |||
include /etc/nginx/fastcgi_params; | |||
try_files $uri =404; | |||
fastcgi_pass unix:/var/run/php/php8.4-fpm.sock; | |||
fastcgi_index index.php; | |||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; | |||
fastcgi_param PATH_INFO $fastcgi_path_info; | |||
fastcgi_param FLOW_REWRITEURLS 1; | |||
fastcgi_param FLOW_CONTEXT Development; | |||
fastcgi_param X-Forwarded-For $proxy_add_x_forwarded_for; | |||
fastcgi_param X-Forwarded-Port $proxy_port; | |||
fastcgi_param REMOTE_ADDR $remote_addr; | |||
fastcgi_param REMOTE_PORT $remote_port; | |||
fastcgi_param SERVER_ADDR $server_addr; | |||
fastcgi_param SERVER_NAME $http_host; | |||
fastcgi_split_path_info ^(.+\.php)(.*)$; | |||
fastcgi_read_timeout 300; | |||
fastcgi_buffer_size 128k; | |||
fastcgi_buffers 256 16k; | |||
fastcgi_busy_buffers_size 256k; | |||
fastcgi_temp_file_write_size 256k; | |||
} | |||
} | |||
</pre> | |||
Aktuelle Version vom 29. Oktober 2025, 08:41 Uhr
Neos Installation Schritt-für-Schritt Anleitung
Diese Anleitung beschreibt die Installation von Neos CMS auf einem Linux-Server mit PostgreSQL.
Schritte
- Als Benutzer
postgresanmelden:sudo -u postgres -i
Dadurch wechselst du zum Datenbank-Benutzer
postgres, um Datenbankbefehle auszuführen. - Neue Datenbank für Neos anlegen:
createdb -E UTF8 -O thorsten neos exit
Erstellt eine neue PostgreSQL-Datenbank namens
neosmit UTF8-Kodierung und dem Eigentümerthorsten. Mitexitverlässt du denpostgres-Benutzer. - Ins Webverzeichnis wechseln und Ordner für Neos erstellen:
cd /var/www sudo mkdir neos sudo chmod 777 -R neos
Wechselt ins Webverzeichnis, erstellt einen Ordner
neosund gibt allen Nutzern Schreibrechte (für Entwicklung geeignet, für Produktion restriktiver setzen). - Neos mit Composer installieren:
composer create-project neos/neos-base-distribution:^8.0 neos
Lädt die aktuelle Neos-Basisdistribution in den Ordner
neosmit Composer. - In das Neos-Verzeichnis wechseln und Setup ausführen:
cd neos sudo ./flow setup:database ./flow doctrine:migrate ./flow user:create --roles Administrator ./flow site:create ./flow kickstart:site Vendor.Site ./flow site:import --package-key Vendor.Site ./flow setup ./flow server:run
./flow setup:database: Datenbankverbindung konfigurieren../flow doctrine:migrate: Datenbankschema anlegen../flow user:create --roles Administrator: Admin-Benutzer erstellen../flow site:create: Leeres Site-Paket erstellen../flow kickstart:site Vendor.Site: Beispiel-Site-Paket generieren../flow site:import --package-key Vendor.Site: Site-Paket importieren../flow setup: Neos-Grundsetup ausführen../flow server:run: Entwicklungsserver starten (http://localhost:8081).
Hinweis: Die Befehle müssen mit entsprechenden Rechten ausgeführt werden. Composer muss installiert sein.
Dauer Lauft
Nginx-Konfiguration
Um Neos über Nginx bereitzustellen, bearbeite die Konfigurationsdatei:
sudo nano /etc/nginx/conf.d/neos.conf
Trage dort die passenden Einstellungen für dein Projekt ein.
server {
listen 80;
server_name daniel.lienert.cc;
root /your/htdocs/Neos/Web/;
index index.php;
location ~ /_Resources/ {
access_log off;
log_not_found off;
expires max;
if (!-f $request_filename) {
rewrite "/_Resources/Persistent/([a-z0-9]{40})/.+\.(.+)" /_Resources/Persistent/$1.$2 break;
rewrite "/_Resources/Persistent(?>/[a-z0-9]{5}){8}/([a-f0-9]{40})/.+\.(.+)" /_Resources/Persistent/$1.$2 break;
}
}
location / {
try_files $uri $uri/ /index.php?$args;
}
# Pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
try_files $uri =404;
fastcgi_pass unix:/var/run/php/php8.4-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param FLOW_REWRITEURLS 1;
fastcgi_param FLOW_CONTEXT Development;
fastcgi_param X-Forwarded-For $proxy_add_x_forwarded_for;
fastcgi_param X-Forwarded-Port $proxy_port;
fastcgi_param REMOTE_ADDR $remote_addr;
fastcgi_param REMOTE_PORT $remote_port;
fastcgi_param SERVER_ADDR $server_addr;
fastcgi_param SERVER_NAME $http_host;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_read_timeout 300;
fastcgi_buffer_size 128k;
fastcgi_buffers 256 16k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}
}