What is mod_php?

后端 未结 6 1987
鱼传尺愫
鱼传尺愫 2020-11-27 09:30

While going through a Zend tutorial, I came across the following statement:

Note that the php_flag settings in .htaccess only work if you are using mo

6条回答
  •  独厮守ぢ
    2020-11-27 10:23

    mod_php means PHP, as an Apache module.

    Basically, when loading mod_php as an Apache module, it allows Apache to interpret PHP files (those are interpreted by mod_php).


    EDIT : There are (at least) two ways of running PHP, when working with Apache :

    • Using CGI : a PHP process is launched by Apache, and it is that PHP process that interprets PHP code -- not Apache itself
    • Using PHP as an Apache module (called mod_php) : the PHP interpreter is then kind of "embedded" inside the Apache process : there is no external PHP process -- which means that Apache and PHP can communicate better.


    And re-edit, after the comment : using CGI or mod_php is up to you : it's only a matter of configuration of your webserver.

    To know which way is currently used on your server, you can check the output of phpinfo() : there should be something indicating whether PHP is running via mod_php (or mod_php5), or via CGI.

    You might also want to take a look at the php_sapi_name() function : it returns the type of interface between web server and PHP.


    If you check in your Apache's configuration files, when using mod_php, there should be a LoadModule line looking like this :

    LoadModule php5_module        modules/libphp5.so
    

    (The file name, on the right, can be different -- on Windows, for example, it should be a .dll)

提交回复
热议问题