好的!CentOS 6.4系统下编译安装LNMP和配置PHP环境,需要进行以下几个步骤:
准备工作
- 更新yum源,使用命令:
yum update
- 安装编译环境和常用工具,使用命令:
yum install -y gcc make cmake wget openssl openssl-devel libmcrypt libmcrypt-devel mhash mhash-devel libxml2 libxml2-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gd gd-devel
安装Nginx
- 下载Nginx源码包,使用命令:
wget http://nginx.org/download/nginx-1.18.0.tar.gz
- 解压Nginx源码包,使用命令:
tar zxvf nginx-1.18.0.tar.gz
- 进入Nginx源码目录,使用命令:
cd nginx-1.18.0/
- 配置Nginx,使用命令:
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-pcre
- 编译和安装Nginx,使用命令:
make && make install
安装MySQL
- 下载MySQL源码包,使用命令:
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.5.62.tar.gz
- 解压MySQL源码包,使用命令:
tar zxvf mysql-5.5.62.tar.gz
- 进入MySQL源码目录,使用命令:
cd mysql-5.5.62/
- 配置MySQL,使用命令:
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DENABLED_LOCAL_INFILE=1
- 编译和安装MySQL,使用命令:
make && make install
- 初始化MySQL,使用命令:
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
- 配置MySQL的配置文件,使用命令:
cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
- 启动MySQL,使用命令:
/usr/local/mysql/bin/mysqld_safe --user=mysql &
安装PHP
- 下载PHP源码包,使用命令:
wget http://mirrors.sohu.com/php/php-5.4.45.tar.gz
- 解压PHP源码包,使用命令:
tar zxvf php-5.4.45.tar.gz
- 进入PHP源码目录,使用命令:
cd php-5.4.45/
- 配置PHP,使用命令:
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --with-mysqli --with-pdo-mysql --with-iconv --with-gd --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --with-curl --with-openssl --with-mcrypt --with-bz2 --with-readline --with-gettext --with-freetype-dir --enable-bcmath --enable-inline-optimization --enable-mbstring --enable-gd-native-ttf --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip
其中,–with-fpm-user和–with-fpm-group需要根据Nginx的用户和组进行修改。 - 编译和安装PHP,使用命令:
make && make install
配置Nginx和PHP
- 配置Nginx的配置文件,使用命令:
vim /usr/local/nginx/conf/nginx.conf
。将其中的server部分修改为以下内容:
server {
listen 80;
server_name localhost;
index index.html index.htm index.php;
location / {
root /usr/local/nginx/html;
index index.html index.htm index.php;
}
location ~ \.php$ {
root /usr/local/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
- 配置PHP的配置文件,使用命令:
cp /usr/local/php/etc/php.ini-production /usr/local/php/etc/php.ini
- 修改PHP的配置文件,使用命令:
vim /usr/local/php/etc/php.ini
。将以下两项分别修改为:
cgi.fix_pathinfo=0
date.timezone = Asia/Shanghai
- 启动Nginx和PHP,使用命令:
/usr/local/nginx/sbin/nginx
和/usr/local/php/sbin/php-fpm
。
以上是CentOS 6.4系统下编译安装LNMP和配置PHP环境的完整步骤。另外,以下是两条示例说明:
示例一
上述步骤中的MySQL版本是5.5.62,如果需要安装其他版本,可以前往MySQL官网下载对应的源码包,并使用相应的版本号进行解压和配置。如要安装MySQL 5.6.50,可以将命令中的https://downloads.mysql.com/archives/get/p/23/file/mysql-5.5.62.tar.gz
替换为https://downloads.mysql.com/archives/get/p/23/file/mysql-5.6.50.tar.gz
。
示例二
上述步骤中,PHP默认的时区是UTC,如果需要修改为其他时区,可以在步骤六中修改。如要将时区修改为北京时间,可以将date.timezone = UTC
修改为date.timezone = Asia/Shanghai
。