Can Create Folders But Not Files - Softaculous Install of NextCloud -

Hello all. This is my first post and Iā€™ve searched for answers but found none describing this exact topic.

Iā€™m testing a setup of NC with my ISP. There is no shell access, so I canā€™t perform a manual install (easily). Their method of install is via Softaculous.

I use it to setup NC and once Iā€™m on as Admin, I can create users, groups, change settings, etc. All good. I can traverse the default directory structure. I can create folders, but I canā€™t upload or drag-n-drop files (using chrome as that is the only one documented as supporting d&d).

Updates fail, even if I edit the example text file and try to save the edited version. Then I get a message like ā€œThere was a problem saving your changes. Click to resume editing.ā€ For new files, I get ā€œFORBIDDENā€ up at the top of the window with no other details. Nothing shows up in the adminā€™s log.

Everything ā€œseemsā€ to be setup properly, but somehow it seems to be pointing to .htaccess as the source of the issue and yet, I canā€™t see anything abnormal. Iā€™ve deleted and recreated the installation in various paths without any change in behavior.

So, it is surely a permission issue but how & whyā€¦ I have no clue and Iā€™m wondering if it is a result of the Softaculous installer. Files are owned by the httpd daemon and when I create a test directory, it shows up with that owner and permissions 755, which, if the upload and update are driving the httpd for files in that directory, it should allow write/create at the least during my testing.

NC is 12.0.3.3
The db is MySQL/Maria 5.6.35
I set PHP to v7.1.7
Itā€™s running Apache 2.4

Has anyone come across this issue and resolved it or can someone please point me in the right direction? Thanks in advance!

UPDATE:

I found a debug toggle inside the code. It seems to be related to this 3rd party app GuzzleHttp, or at least this is the only error I can find. Looks like a traceback. Here is the diagnostic:

GuzzleHttp\Exception\ClientException: Client error response [url] https://push-notifications.nextcloud.com/notifications [status code] 400 [reason phrase] Bad Request

/home/xxxxx/public_html/nextcloudtest/3rdparty/guzzlehttp/guzzle/src/Subscriber/HttpError.php - line 32: GuzzleHttp\Exception\RequestException create(Object(GuzzleHttp\Message\Request), Object(GuzzleHttp\Message\Response))

/home/xxxxx/public_html/nextcloudtest/3rdparty/guzzlehttp/guzzle/src/Event/Emitter.php - line 108: GuzzleHttp\Subscriber\HttpError->onComplete(Object(GuzzleHttp\Event\CompleteEvent), ā€˜completeā€™)

/home/xxxxx/public_html/nextcloudtest/3rdparty/guzzlehttp/guzzle/src/RequestFsm.php - line 91: GuzzleHttp\Event\Emitter->emit(ā€˜completeā€™, Object(GuzzleHttp\Event\CompleteEvent))

/home/xxxxx/public_html/nextcloudtest/3rdparty/guzzlehttp/guzzle/src/RequestFsm.php - line 132: GuzzleHttp\RequestFsm->__invoke(Object(GuzzleHttp\Transaction))

/home/xxxxx/public_html/nextcloudtest/3rdparty/react/promise/src/FulfilledPromise.php - line 25: GuzzleHttp\RequestFsm->GuzzleHttp{closure}(Array)

/home/xxxxx/public_html/nextcloudtest/3rdparty/guzzlehttp/ringphp/src/Future/CompletedFutureValue.php - line 55: React\Promise\FulfilledPromise->then(Object(Closure), NULL, NULL)

/home/xxxxx/public_html/nextcloudtest/3rdparty/guzzlehttp/guzzle/src/Message/FutureResponse.php - line 43: GuzzleHttp\Ring\Future\CompletedFutureValue->then(Object(Closure), NULL, NULL)

/home/xxxxx/public_html/nextcloudtest/3rdparty/guzzlehttp/guzzle/src/RequestFsm.php - line 134: GuzzleHttp\Message\FutureResponse proxy(Object(GuzzleHttp\Ring\Future\CompletedFutureArray), Object(Closure))

/home/xxxxx/public_html/nextcloudtest/3rdparty/guzzlehttp/guzzle/src/Client.php - line 165: GuzzleHttp\RequestFsm->__invoke(Object(GuzzleHttp\Transaction))

/home/xxxxx/public_html/nextcloudtest/3rdparty/guzzlehttp/guzzle/src/Client.php - line 150: GuzzleHttp\Client->send(Object(GuzzleHttp\Message\Request))

/home/xxxxx/public_html/nextcloudtest/lib/private/Http/Client/Client.php - line 204: GuzzleHttp\Client->post(ā€˜https //push-noā€¦ā€™, Array)

/home/xxxxx/public_html/nextcloudtest/apps/notifications/lib/Push.php - line 120: OC\Http\Client\Client->post(ā€˜https //push-noā€¦ā€™, Array)

/home/xxxxx/public_html/nextcloudtest/apps/notifications/lib/App.php - line 48: OCA\Notifications\Push->pushToDevice(Object(OC\Notification\Notification))

/home/xxxxx/public_html/nextcloudtest/lib/private/Notification/Manager.php - line 187: OCA\Notifications\App->notify(Object(OC\Notification\Notification))

/home/xxxxx/public_html/nextcloudtest/apps/firstrunwizard/lib/Notification/BackgroundJob.php - line 53: OC\Notification\Manager->notify(Object(OC\Notification\Notification))

/home/xxxxx/public_html/nextcloudtest/lib/private/BackgroundJob/Job.php - line 59: OCA\FirstRunWizard\Notification\BackgroundJob->run(Array)

/home/xxxxx/public_html/nextcloudtest/lib/private/BackgroundJob/QueuedJob.php - line 43: OC\BackgroundJob\Job->execute(Object(OC\BackgroundJob\JobList), Object(OC\Log))

/home/xxxxx/public_html/nextcloudtest/cron.php - line 147: OC\BackgroundJob\QueuedJob->execute(Object(OC\BackgroundJob\JobList), Object(OC\Log))
{main}

UPDATE - SOLVED.

.htaccess issue in the install path.

Hi, are you able to provide more details about what was wrong with the .htaccess file and what you changed?