403 Forbidden you don't have permission to access on this server appears when attempting to access a resource from a web server, such as an HTML page (index.html) or an image file (foo.jpg).
The minimal permission needed for the file being requested is -r--r--r-- (read only).
~]# ll /var/www/html -r--r--r-- 1 root root 1473 Dec 29 02:44 index.html
Use the sestatus command to determine if SELinux is enforcing, permissive, or disabled.
~]# sestatus Current mode: enforcing
If SELinux is enforcing, use the ls -lZ command to view the SELinux permissions on the files being requested. The type needs to be httpd_sys_content_t.
~]# ls -lZ /var/www/html -r--r--r-- 1 root root unconfined_u:object_r:httpd_sys_content_t:s0 index.html
If the type is not httpd_sys_content_t, restore the context.
~]# restorecon -Rv /var/www/html
Check the server configuration file (eg. httpd.conf). Check to see if the directory being requested is granted.
<Directory /> Require all granted </Directory>
There may also be other lines in the server configuration file that need to be adjusted. For example, if a required include is commented out, that may cause 403.
# Include /path/to/file