Home  >  Article  >  Backend Development  >  How to install php script language under linux

How to install php script language under linux

青灯夜游
青灯夜游Original
2021-05-31 18:42:151747browse

Method: 1. Install libtool and libtool-ltdl; 2. Modify the gd library file; 3. Execute the "make install" command to compile and install the PHP source code package; 4. Create a PHP configuration file; 5. Allow apache to Identify the ".php" extension; 6. Restart the Apache server.

How to install php script language under linux

The operating environment of this tutorial: windows7 system, PHP version 5.4.25, DELL G3 computer

How to install php under linux

1) Install libtool and libtool-ltdl

[root@localhost mysql]# yum -y install "libtool*"
[root@localhost mysql]# yum -y install "libtool-ltdl*"

2) Manually modify the gd library file

PHP 5.4 also has some bugs. When detecting the gd library, an error will be reported and we need to modify it manually. The command is as follows:

[root@localhost mysql]# vi /usr/local/gd2/include/gd_io.h
#修改gd_io.h头文件
typedef struct gdIOCtx
{
    …
    void (*data);
    #在此程序段中加入此句
}

3) Compile and install the PHP source package

The command is as follows:

[root@localhost mysql]# cd /usr/local/src/ php-5.4.25
[root@localhost php-5.4.25]# ./configure \ #编译前配置
--prefix=/usr/local/php/ \ #指定安装位置
--with-config-file-path=/usr/local/php/etc/ \ #指定PHP配置文件位置
--with-apxs2=/usr/local/apache2/bin/apxs \ #调用apache2
--with-mysql=/usr/local/mysql/ \ #调用mysql
--with-libxml-dir=/usr/local/libxml2/ \ #调用libxml2库
--with-jpeg-dir=/usr/local/jpeg6/ \ #调用jpeg库
--with-png-dir=/usr/local/libpng/ \ #调用libpng库
--with-freetype-dir=/usr/local/freetype/ \ #调用freetype库
--with-gd=/usr/local/gd2/ \ #调用gd库
--with-mcrypt=/usr/local/libmcrypt/ \ #调用libmcrypt库
--with-mysqli=/usr/local/mysql/bin/mysql_config \#增加MysqlLi功能
--enable-soap \ #支持SOAP和Web Services
--enable-mbstring=all \ #支持多字节字符串
--enable-sockets #支持socket(套接字)通信
--with-pdo-mysql=/usr/local/mysql #启用mysql的pdo模块支持
[root@localhost php-5.4.25]# make
#编译
[root@localhost php-5.4.25]# make install
#编译安装

4) Create a PHP configuration file

The same as MySQL, this configuration file does not need to be created manually, there is also a template file, we only need to copy it. The command is as follows:

[root@localhost php-5.4.25]# cp /usr/local/src/ php-5.4.25/php.ini-production
/usr/local/php/etc/php.ini

5) Let apache recognize the ".php" extension

When installing PHP, use - in the ./configure command -with-apxs2=/usr/local/apache2/bin/apxs option, PHP has been recognized by apache as a module. However, apache does not know which extension files need to be parsed by calling the PHP module (if it is an extension that apache does not recognize, then when the client accesses it, apache will not try to parse it, but will prompt the client to download it), so we You need to modify the apache configuration file so that apache can recognize the extension of the PHP script.

For example, if we want apache to call the PHP module to parse the contents of these files when it encounters the ".php" and ".phps" extensions, then we only need to execute the following command:

[root@localhost php-5.4.25]# vi /usr/local/apache2/etc/httpd.conf
#修改apache配置文件,加入如下内容
AddType application/x-httpd-php.php.phps

#This sentence means: If the .php and .phps extensions are encountered, the PHP module is called to parse the content of this file

This sentence is loaded in the apache configuration file Any location is acceptable, but there is a similar statement AddType application/x-gzip.gz.tgz in the system, so we generally load it after this sentence. The command is as follows:

[root@localhost php-5.4.25]# vi /usr/local/apache2/etc/httpd.conf
…省略部分输出…
# If the AddEncoding directives above are commented-out, then you probably should define those extensions to indicate media types:
#
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php .phps #加载到此位置
…省略部分输出…

As for the extension of the PHP file, it can be freely defined.

6) Restart the Apache server

We have modified the apache configuration file. If you want this modification to take effect, you must restart the Apache server. The restart command is as follows:

[root@localhost php-5.4.25]# /usr/local/apache2/bin/apachectl stop
[root@localhost php-5.4.25]# /usr/local/apache2/bin/apachectl start

It is best not to use the restart parameter here, because for the apache startup command of the source code package, the restart parameter sometimes does not work.

Supplement: Test whether the PHP environment is normal

For apache installed in the source code package, the default storage location of the web page is /usr/local/apache2/ htdocs/ directory. In order to test whether the PHP environment is normal, we need to create a PHP file in this directory to see if the file can be displayed normally. The command is as follows:

[root@localhost php-5.4.25]# vi /usr/local/apache2/htdocs/index.php
<?php
phpinfo();
?>

Here we use the phpinfo() function. The main function of this function is to display PHP-related information. This information includes PHP compilation information, PHP version, server information and environment. , PHP environment, operating system information, paths, main configuration options, HTTP header information and PHP permissions, etc. We generally use this function to test whether PHP is installed successfully, and then enter "http://serverIP/index.php" in the browser to execute the file, as shown in the figure below.

How to install php script language under linux

If you can see the picture above, congratulations, PHP is installed successfully.

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of How to install php script language under linux. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn