Hi everyone,
I’m trying to get nextcloud 17 works on rasberry pi 3B+, I followed these guides :
maual_installation_Nextcloud
Blog_installation_nextcloud_fr
And I get this :
To me it seems to be a php error, am I wrong ?
I’m running on ubuntu 18.04.3 with php 7.2 :
php --version PHP 7.2.19-0ubuntu0.18.04.2 (cli) (built: Aug 12 2019 19:34:28) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.19-0ubuntu0.18.04.2, Copyright (c) 1999-2018, by Zend Technologies
I check with php -m
and I have all the modules indicate here : maual_installation_Nextcloud
Beside my index.php begins with
`/**
*
Is it a configuration problem then ?
if you need information please tell me
Schmu
October 2, 2019, 2:02pm
2
Hi,
This indicates that there is no PHP interpreter active on your server. PHP is not even handled on server.
Yes, definitely
This PHP “instance” is for the command line interface (cli) only, not for the web server.
So you might need to check later, if the same modules are active for the apache-php as well.
Maybe look for a more up to date installation guide for Nextcloud, which describes how to install PHP 7.2 or 7.3 with apache.
I’m not an apache user myself, but I think nowadays php-fpm is used for apache.
Well thank you, it works with php-fpm.
What I did :
sudo apt install php-fpm
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php7.2-fpm
sudo systemctl reload apache
sudo systemctl restart apache2
1 Like
neod
October 7, 2019, 12:15am
4
Hello everyone,
I have got a similiar issue, but my setup is a bit different:
Raspberry PI 3B+
Nginx 1.10.3
PHP 7.3
I would prefer to use this config since the RPI is not so powerful and theses elements should be more efficient.
I have followed this documentation:
https://www.c-rieger.de/nextcloud-installation-guide-ubuntu/
and for the nginx configuration I have this:
upstream php-handler {
server unix:/var/run/nextcloud.sock;
}
server {
listen 80;
listen [::]:80;
server_name nextcloud.mycloud.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name nextcloud.mycloud.com;
# Path to the root of your installation
root /var/www/nextcloud/;
ssl on;
ssl_certificate /etc/letsencrypt/live/nextcloud.mycloud.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/nextcloud.mycloud.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/nextcloud.mycloud.com/chain.pem;
#ssl_dhparam /etc/ssl/certs/dhparam.pem;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 1440m;
ssl_buffer_size 8k;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'kEECDH+ECDSA+AES128 kEECDH+ECDSA+AES256 kEECDH+AES128 kEECDH+AES256 kEDH+AES128 kEDH+AES256 DES-CBC3-SHA +SHA !aNULL !eNULL !LOW !kECDH !DSS !MD5 !EXP !PSK !SRP !CAMELLIA !SEED';
ssl_prefer_server_ciphers on;
ssl_stapling on;
ssl_stapling_verify on;
# Add headers to serve security related headers
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;
add_header Strict-Transport-Security 'max-age=31536000; includeSubDomains;';
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location = /.well-known/carddav {
return 301 $scheme://$host/remote.php/dav;
}
location = /.well-known/caldav {
return 301 $scheme://$host/remote.php/dav;
}
# set max upload size
client_max_body_size 512M;
fastcgi_buffers 64 4K;
# Enable gzip but do not remove ETag headers
gzip on;
gzip_vary on;
gzip_comp_level 4;
gzip_min_length 256;
gzip_proxied expired no-cache no-store private no_last_modified no_etag auth;
gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;
location / {
rewrite ^ /index.php$uri;
}
location ~ ^/.well-known/acme-challenge/* {
allow all;
}
location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
deny all;
}
location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) {
deny all;
}
location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+).php(?:$|/) {
fastcgi_split_path_info ^(.+.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param HTTPS on;
#Avoid sending the security headers twice
fastcgi_param modHeadersAvailable true;
fastcgi_param front_controller_active true;
fastcgi_pass php-handler;
fastcgi_intercept_errors on;
fastcgi_request_buffering off;
fastcgi_read_timeout 300;
}
location ~ ^/(?:updater|ocs-provider)(?:$|/) {
try_files $uri/ =404;
index index.php;
}
# Adding the cache control header for js and css files
# Make sure it is BELOW the PHP block
location ~* .(?:css|js|woff|svg|gif)$ {
try_files $uri /index.php$uri$is_args$args;
add_header Cache-Control "public, max-age=15778463";
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;
# Optional: Don't log access to assets
access_log off;
}
location ~* .(?:png|html|ttf|ico|jpg|jpeg)$ {
try_files $uri /index.php$uri$is_args$args;
# Optional: Don't log access to other assets
access_log off;
}
}
When I go to the main webpage, the server provide the raw PHP file for download.
It seems that Nginx didnot linked the php module.
Any help could be greatfull