Problem after Upgrade to Apache HTTPD 2.4.26

10
webserver_issue

#1

Hi guys,

I've got a maybe very personal problem which can't be correctly described with the prefilled things. I try to explain it as detailed as possible:

I'm ever since compiling my own web server. Im using Apache HTTPD. I installed my ownCloud instance to a self-compiled Apache version 2.4.25 (ownCloud 10.0.2.0). Everything works fine. I installed memcache and redis, I tried different things and couldn't face any show stoppers or problems. My OS is CentOS 6.9 (Final).

Until I now updated to Apache version 2.4.26. I use the same compile method, same configure options, same environment (except that expat is not bundled anymore with apr-util, so I installed it on my own and expanded the configure for --with-expat). The Apache itself runs fine, pages are displayed and everything.

But now I have a problem with ownCloud. A very strange one. I can't Share anything anymore. If I try to share a folder with Groups, the search has no matches. Public links are created, but not editable and disappear as I reload the page. I tried many things to investigate the problem and I now came to a point, where I can't find any answer by myself. Following I could find out:

The problem is in the API (is it really an API? Idk...) ocs. More detailed:
I used the URL from logfiles (which get a 200 - OK as a response) to investigate which URL is called when sharing. Its this one:

/ocs/v1.php/apps/files_sharing/api/v1/sharees?format=json&search=Fa&perPage=200&itemType=folder

I search for "Fa" as one of my groups is called "Familie".
If I directly open this in my Browser tab with version 2.4.25, I get the following response:

ocs
meta
status "ok"
statuscode 100
message "OK"
totalitems ""
itemsperpage ""
data
exact
users
groups
remotes
users
groups
0
label "Familie"
value
shareType 1
shareWith "Familie"
remotes

Now I only change the version from 2.4.25 to 2.4.26 and just reload the exact same page. I still get a 200 return code in Apache logfiles, but I get a different response in browser:

ocs
meta
status "failure"
statuscode 999
message "Invalid query, please check the syntax. API specifications are here: http://www.freedesktop.org/wiki/Specifications/open-collaboration-services. DEBUG OUTPUT:\n"
data

So now I can't get why this isn't working. Everything else is the same as before, just the current Apache release is the difference to working and non-working. Any suggestions on what I can inspect now or how to solve this issue?

In addition: All Logfiles are empty. No error in Apache Errorlog, nothing in php-fpm Errorlog, nothing in owncloud.log (even with 'debug' => true in config.php).

Thanks in advance and regards,


#2

If Apache was the only component which was changed what is a apache support forums / bugtracker saying about this?


#3

Haven't found anything similar already existing there and though its only one part of owncloud (all other pages and parts of owncloud are working correctly), I started creating an issue here.


#4

The most important question to answer currently is: What was changed between Apache 2.4.25 and 2.4.26 which causes getting such different results.

Not quite sure if you can get an answer to this question in here. :confused:

Maybe a comparison of the changelog gives some additional hints?


#5

Good point you got. Maybe I'll try at the httpd users list and come back if I get an answer pointing to ownCloud.
I've looked at the changelog but can't find a reason there. Maybe others have a better understanding on it:

http://www.apache.org/dist/httpd/CHANGES_2.4.26

I thought first it may be cause of the major changes to HTTP/2 but even with HTTP/1.1 hard defined as protocol (and checking on access log) I have the same issue as before, so this is not a reason.

But thanks anyhow for the reply!


#6

As an alternative you could also try to switch from php-fpm to mod_php to see if that makes a difference.


#7

Even if that would solve the problem (which I currently would not suggest), thats not a solution :wink: No one should use mod_php over php-fpm.


#8

But it helps you to see where the issue is coming from. There where e.g. a few bugs directly in Apache only if running via php-fpm (you can search the github bugtracker of ownCloud for that) which might happen again at any time.


#9

Strange, but you're totally right. If I configure mod_php with the current Apache release, there is no problem (except it's way slower). I will write now to httpd users list maybe theres a suggestion somewhere.


#10

Hi again,

to give feedback to this and maybe other users finding it useful, it's a bug in httpd's mod_proxy_fcgi:

https://bz.apache.org/bugzilla/show_bug.cgi?id=61202

The SCRIPT_NAME is (again...) broken in this release which causes SCRIPT_NAME to be 'v1.php' instead of '/ocs/v1.php'. During this it doesn't work anymore.

Theres a "quick" but not that good workaround cause it might break other behaviours:

In your server configuration add the directive

ProxyFCGIBackendType GENERIC

This might break some other things, but for me and for ownCloud I can't find anything that isn't working for now. As I have my ownCloud in an own vhost, this temporary workaround is fine for me as it doesn't affect my other sites. Currently the plan from httpd project is to change the code back to < 2.4.21 behaviour with the next release 2.4.27 (and to fill up the test suite so they don't break it again).


#11

Hey, nice research / sum-up. Thanks for posting this in here.