Mobile app version of vmapp.org
Login or Join
Kimberly868

: Do PHP-FPM (and other PHP handlers) need execute permissions on the PHP files they're serving? I read in a post at Server Fault that PHP-FPM needs execute permissions. However, the answer in

@Kimberly868

Posted in: #Apache #Nginx #Php

I read in a post at Server Fault that PHP-FPM needs execute permissions. However, the answer in When creating a website, what permissions and directory structure? only grants read and write permissions to PHP-FPM. Maybe I don't quite understand how PHP handlers (or CGI in general) work, but the two claims seem contradictory to me.

As I understand, when Apache / Nginx gets a request for foobar.php, it "passes" the file to an appropriate handler. That is, I imagine it's as if www-root (or apache or whomever the webserver's running as) were to run some command,

/usr/sbin/php-fpm foobar.php


Actually, no, that's naive, I just realized. PHP-FPM must be a running instance (if it's to be performant, and cache, etc.), so probably PHP-FPM is just being told, "Hey, quick, process this file for me!"

In either case, I don't see why execute permissions are necessary. It's not like the webserver needs to literally execute the file, i.e.

./foobar.php


Is the Server Fault answer simply mistaken?

10.02% popularity Vote Up Vote Down


Login to follow query

More posts by @Kimberly868

2 Comments

Sorted by latest first Latest Oldest Best

 

@Ogunnowo487

You are correct - the file does not need to be 755 executable. The file being passed to PHP-FPM should have permissions set to 644 (owner read/write, group read, global read). This is especially needed on shared hosting so that others can not overwrite your files.

10% popularity Vote Up Vote Down


 

@Karen161

No, php-fpm user does NOT need execute permissions on PHP files. It only needs read permission, as PHP files are parsed by PHP preprocessor and not executed directly.

10% popularity Vote Up Vote Down


Back to top | Use Dark Theme