Hello everyone! I'm trying to set up Elkarte for the first time and I'm having some trouble with the installer. It seems to think that all the Elkarte files are write-protected, but this is not the case according to
ls. I've tried setting up an FTP server and filling in the details at the bottom of the page to let it auto-fix whatever the problem is, but when I click "Connect" it just refreshes the page. I'm running it in a VM with nginx, PHP 7.3, and MariaDB 5.5.65 on CentOS 7 (didn't realize they'd already come out with 8 until after I installed it). The host OS is Manjaro Linux, and the hypervisor is QEMU/KVM. Any ideas guys?
$ ls -l
total 200
drwxrwxrwx. 2 nginx nginx 23 Jul 21 2019 addons
-rwxrwxrwx. 1 nginx nginx 3343 Jun 30 18:41 agreement.txt
drwxrwxrwx. 2 nginx nginx 40 Jul 21 2019 attachments
drwxrwxrwx. 3 nginx nginx 54 Jul 21 2019 avatars
-rwxrwxrwx. 1 nginx nginx 13210 Jul 21 2019 bootstrap.php
drwxrwxrwx. 2 nginx nginx 58 Jul 21 2019 cache
-rwxrwxrwx. 1 nginx nginx 2 Jun 30 16:43 db_last_error.sample.txt
-rwxrwxrwx. 1 nginx nginx 2 Jul 21 2019 db_last_error.txt
-rwxrwxrwx. 1 nginx nginx 1040 Jul 21 2019 email_imap_cron.php
-rwxrwxrwx. 1 nginx nginx 1049 Jul 21 2019 emailpost.php
-rwxrwxrwx. 1 nginx nginx 1082 Jul 21 2019 emailtopic.php
-rwxrwxrwx. 1 nginx nginx 1150 Jul 21 2019 favicon.ico
-rwxrwxrwx. 1 nginx nginx 3571 Jun 30 21:49 index.php
drwxrwxrwx. 2 nginx nginx 4096 Jul 21 2019 install
-rwxrwxrwx. 1 nginx nginx 1533 Jul 21 2019 LICENSE.txt
drwxrwxrwx. 3 nginx nginx 77 Jul 21 2019 packages
-rwxrwxrwx. 1 nginx nginx 0 Jul 21 2019 privacypolicy.txt
-rwxrwxrwx. 1 nginx nginx 4936 Jul 21 2019 README.md
-rwxrwxrwx. 1 nginx nginx 3778 Jun 30 16:44 Settings_bak.php
-rwxrwxrwx. 1 nginx nginx 3778 Jul 21 2019 Settings_bak.sample.php
-rwxrwxrwx. 1 nginx nginx 3778 Jun 30 16:44 Settings.php
-rwxrwxrwx. 1 nginx nginx 3778 Jul 21 2019 Settings.sample.php
drwxrwxrwx. 3 nginx nginx 38 Jul 21 2019 smileys
drwxrwxrwx. 8 nginx nginx 4096 Jul 21 2019 sources
-rwxrwxrwx. 1 nginx nginx 28902 Jul 21 2019 ssi_examples.php
-rwxrwxrwx. 1 nginx nginx 5738 Jul 21 2019 ssi_examples.shtml
-rwxrwxrwx. 1 nginx nginx 69584 Jul 21 2019 SSI.php
-rwxrwxrwx. 1 nginx nginx 8071 Jul 21 2019 subscriptions.php
drwxrwxrwx. 3 nginx nginx 38 Jul 21 2019 themes
So you're saying all the listed files/directories are 755 or 777? On some systems, for whatever reason, 777 is necessary for file write permissions. In theory 755 should be sufficient, yet isn't. Try going 777.
Another possibility is file ownership. Hope that helps!
That's what it said on the page, so I set all the files to 777 (you can tell because ls -l shows rwxrwxrwx for all of them in the spoiler) and it still has this problem. Currently the owner is my nginx user; I'll try setting it to myself.
Nope, still not working. Is there some kind of log I can check for more details?
Nginx is probably not the correct owner. PHP accesses those files. It should be the same owner PHP would use under the VM container, I think.
Okay this is weird. So I'm running nginx and PHP-FPM via systemd's systemctl, so according to htop the master processes are running as root but all the others are running as the nginx user. :/
Found the solution! Apparently it was SELinux blocking the files from being written to. https://www.simplemachines.org/community/index.php?topic=563324.msg4009594#msg4009594