blizzz
September 28, 2023, 1:50pm
1
The RC1 release of 27.1.2 is now available on our download server.
As always, help with testing is very much welcome!
We updated our servers, did our tests, and the release seem pretty decent. Still, give it a whirl and report back here so we’re even more sure that it’s good to go! If you notice anything out of order, please report back on the appropriate github repository!
Downloads
Changelog
eehmke
September 28, 2023, 2:31pm
2
The update went flawless in the web updater of my beta installation. However, now I get this warning in the admin page:
Dein Webserver ist nicht ordnungsgemäß für die Auflösung von "/ocm-provider/" eingerichtet...
There is no ocm-provider in my installation, only ocs-provider. I use the apache webserver, what must be done?
1 Like
eehmke
September 28, 2023, 4:01pm
3
I copied the ocm-provider folder from another 27.1.1 installation into my 27.1.2 RC1 installation, and the warning is gone.
blizzz
September 28, 2023, 6:45pm
4
The folder should not be there since https://github.com/nextcloud/server/pull/40586 as this endpoint is now handled by a proper Controller in the regular business logic. We do not see this warning on our upgraded instances so far. Could you double check your web server config? I am also checking back with the developer.
eehmke
September 28, 2023, 7:38pm
5
In my web server config I have no reference to that directory. The warning also did not show up before 27.1.2 RC1. However, the ocm-provider directory was present in my other stable installation, and copying it over to my beta installation solved the issue for me.
The directory must not exist anymore in 27.1.2 RC1
Can you delete it again and instead try removing ocm-provider|
from this line:
$content .= "\n<IfModule mod_rewrite.c>";
$content .= "\n Options -MultiViews";
$content .= "\n RewriteRule ^core/js/oc.js$ index.php [PT,E=PATH_INFO:$1]";
$content .= "\n RewriteRule ^core/preview.png$ index.php [PT,E=PATH_INFO:$1]";
$content .= "\n RewriteCond %{REQUEST_FILENAME} !\\.(css|js|mjs|svg|gif|png|html|ttf|woff2?|ico|jpg|jpeg|map|webm|mp4|mp3|ogg|wav|wasm|tflite)$";
$content .= "\n RewriteCond %{REQUEST_FILENAME} !/core/ajax/update\\.php";
$content .= "\n RewriteCond %{REQUEST_FILENAME} !/core/img/(favicon\\.ico|manifest\\.json)$";
$content .= "\n RewriteCond %{REQUEST_FILENAME} !/(cron|public|remote|status)\\.php";
$content .= "\n RewriteCond %{REQUEST_FILENAME} !/ocs/v(1|2)\\.php";
$content .= "\n RewriteCond %{REQUEST_FILENAME} !/robots\\.txt";
$content .= "\n RewriteCond %{REQUEST_FILENAME} !/(ocm-provider|ocs-provider|updater)/";
$content .= "\n RewriteCond %{REQUEST_URI} !^/\\.well-known/(acme-challenge|pki-validation)/.*";
$content .= "\n RewriteCond %{REQUEST_FILENAME} !/richdocumentscode(_arm64)?/proxy.php$";
$content .= "\n RewriteRule . index.php [PT,E=PATH_INFO:$1]";
$content .= "\n RewriteBase " . $rewriteBase;
$content .= "\n <IfModule mod_env.c>";
$content .= "\n SetEnv front_controller_active true";
$content .= "\n <IfModule mod_dir.c>";
$content .= "\n DirectorySlash off";
$content .= "\n </IfModule>";
$content .= "\n </IfModule>";
So the final line looks like:
$content .= "\n RewriteCond %{REQUEST_FILENAME} !/(ocs-provider|updater)/";
Afterwards run sudo -u www php occ maintenance:update:htaccess
And retry?
2 Likes
Uturn
September 29, 2023, 8:53am
7
my setup (hosted at owncube) stalls with a
Step 3 is currently in process. Please reload this page later.
message. How to get rid of that?
eehmke
September 29, 2023, 12:16pm
8
This is strange. I did the change in Setup.php, deleted the ocm-provider directory and reloaded the page. The error was gone.
Then i detected your last line and did the
sudo -u www php occ maintenance:update:htaccess
step, which was successful. But now the error is present again!
blizzz
October 2, 2023, 8:24pm
9
Indeed. The setup change has only effect on the .htaccess recreation with the occ call. But did you actually state you are running Apache?
Do you see differences when you access the settings page with clean urls or without (without = having index.php in the URL)?
Also, is this instance placed in a subfolder (for instance https://example.com/nextcloud/
)?
eehmke
October 2, 2023, 8:37pm
10
I have index.php in the URL. I can’t tell any differences as I can’t access the settings page otherwise.
No the instance is not in a subfolder. I have a subdomain like testcloud.tld.de
blizzz
October 4, 2023, 10:16am
11
Thanks for the info! So do you use Apache, Nginx, or some other webserver?
eehmke
October 4, 2023, 10:17am
12
I use Apache, with a virtual host for the cloud service.
blizzz
October 4, 2023, 10:17am
13
Ok, good. And do you have the rewrite module enabled?
eehmke
October 4, 2023, 10:28am
14
Yes, but there are no rewrites in the cloud vhost.
blizzz
October 4, 2023, 10:42am
15
Alright. Could you add the highlighted line to your .htaccess
(same location) and retry?
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} DavClnt
RewriteRule ^$ /remote.php/webdav/ [L,R=302]
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteRule ^\.well-known/carddav /remote.php/dav/ [R=301,L]
RewriteRule ^\.well-known/caldav /remote.php/dav/ [R=301,L]
RewriteRule ^remote/(.*) remote.php [QSA,L]
RewriteRule ^(?:build|tests|config|lib|3rdparty|templates)/.* - [R=404,L]
RewriteRule ^\.well-known/(?!acme-challenge|pki-validation) /index.php [QSA,L]
RewriteRule ^ocm-provider/?$ /index.php [QSA,L]
RewriteRule ^(?:\.(?!well-known)|autotest|occ|issue|indie|db_|console).* - [R=404,L]
</IfModule>
AddDefaultCharset utf-8
Options -Indexes
1 Like
eehmke
October 4, 2023, 10:48am
16
Great, that fixed it! Thank you for your patience.
I reloaded the apache server, if that matters.
1 Like
blizzz
October 4, 2023, 10:50am
17
Thank you for pointing it out all the help around it
1 Like
blizzz
October 4, 2023, 11:06am
18
May I ask you for one more favor? Could you provide us your whole .htaccess file in its current state?
eehmke
October 4, 2023, 11:15am
19
Sure.
<IfModule mod_headers.c>
<IfModule mod_setenvif.c>
<IfModule mod_fcgid.c>
SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
</IfModule>
<IfModule mod_proxy_fcgi.c>
SetEnvIfNoCase Authorization "(.+)" HTTP_AUTHORIZATION=$1
</IfModule>
<IfModule mod_lsapi.c>
SetEnvIfNoCase ^Authorization$ "(.+)" XAUTHORIZATION=$1
RequestHeader set XAuthorization %{XAUTHORIZATION}e env=XAUTHORIZATION
</IfModule>
</IfModule>
<IfModule mod_env.c>
# Add security and privacy related headers
# Avoid doubled headers by unsetting headers in "onsuccess" table,
# then add headers to "always" table: https://github.com/nextcloud/server/pull/19002
Header onsuccess unset Referrer-Policy
Header always set Referrer-Policy "no-referrer"
Header onsuccess unset X-Content-Type-Options
Header always set X-Content-Type-Options "nosniff"
Header onsuccess unset X-Frame-Options
Header always set X-Frame-Options "SAMEORIGIN"
Header onsuccess unset X-Permitted-Cross-Domain-Policies
Header always set X-Permitted-Cross-Domain-Policies "none"
Header onsuccess unset X-Robots-Tag
Header always set X-Robots-Tag "noindex, nofollow"
Header onsuccess unset X-XSS-Protection
Header always set X-XSS-Protection "1; mode=block"
SetEnv modHeadersAvailable true
</IfModule>
# Add cache control for static resources
<FilesMatch "\.(css|js|mjs|svg|gif|png|jpg|ico|wasm|tflite)$">
<If "%{QUERY_STRING} =~ /(^|&)v=/">
Header set Cache-Control "max-age=15778463, immutable"
</If>
<Else>
Header set Cache-Control "max-age=15778463"
</Else>
</FilesMatch>
# Let browsers cache WOFF files for a week
<FilesMatch "\.woff2?$">
Header set Cache-Control "max-age=604800"
</FilesMatch>
</IfModule>
<IfModule mod_php.c>
php_value mbstring.func_overload 0
php_value default_charset 'UTF-8'
php_value output_buffering 0
<IfModule mod_env.c>
SetEnv htaccessWorking true
</IfModule>
</IfModule>
<IfModule mod_mime.c>
AddType image/svg+xml svg svgz
AddType application/wasm wasm
AddEncoding gzip svgz
# Serve ESM javascript files (.mjs) with correct mime type
AddType text/javascript js mjs
</IfModule>
<IfModule mod_dir.c>
DirectoryIndex index.php index.html
</IfModule>
<IfModule pagespeed_module>
ModPagespeed Off
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} DavClnt
RewriteRule ^$ /remote.php/webdav/ [L,R=302]
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteRule ^\.well-known/carddav /remote.php/dav/ [R=301,L]
RewriteRule ^\.well-known/caldav /remote.php/dav/ [R=301,L]
RewriteRule ^remote/(.*) remote.php [QSA,L]
RewriteRule ^(?:build|tests|config|lib|3rdparty|templates)/.* - [R=404,L]
RewriteRule ^\.well-known/(?!acme-challenge|pki-validation) /index.php [QSA,L]
RewriteRule ^ocm-provider/?$ /index.php [QSA,L]
RewriteRule ^(?:\.(?!well-known)|autotest|occ|issue|indie|db_|console).* - [R=404,L]
</IfModule>
AddDefaultCharset utf-8
Options -Indexes
#### DO NOT CHANGE ANYTHING ABOVE THIS LINE ####
ErrorDocument 403 /index.php/error/403
ErrorDocument 404 /index.php/error/404
1 Like
eehmke
October 5, 2023, 9:05pm
20
Alright, now I installed 27.1.2 final and the problem did not show up again.