首先来介绍一下nginx.nginx是一个高性能的 http 和 反向代理 服务器,也是一个 imap/pop3/smtp 代理服务器。nginx不仅可以作为web服务器,也可以作为负载均衡器,之前也有文章介绍,大家可以看一下.
mysql是一款开源免费的数据软件,mysql是一个小型关系型数据库管理系统,其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了mysql作为网站数据库.
php,是英文超级文本预处理语言hypertext preprocessor的缩写。php 是一种 html 内嵌式的语言,是一种在服务器端执行的嵌入html文档的脚本语言,语言的风格有类似于c语言,被广泛的运用。
首先 上传或下载源码压缩文件
首先安装nginx
1安装其依赖
编译yum
yum -y install zlib-devel pcre-devel openssl-devel
进入/usr/src目录
解压文件
tar –zxvf nginx-1.1.18.tar.gz
进入 目录 进行预编译
[root@localhost ~]# cd /usr/src/
[root@localhost src]# cd nginx-1.1.18
[root@localhost nginx-1.1.18]#[root@localhost nginx-1.1.18]# ./configure --prefix=/usr/local/nginx/ --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --with-pcre
执行编译
make
执行安装
make install
察看
[root@localhost nginx-1.1.18]# echo $path
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
创建目录
[root@localhost nginx-1.1.18]# mkdir -pv /var/tmp/nginx
启动察看
root@localhost nginx-1.1.18]# nginx
[root@localhost nginx-1.1.18]# netstat -tupln |grep nginx
tcp 0 0 0.0.0.0:80 0.0.0.0:* listen 11071/nginx: master
测试外网访问测试成功
2下面来安装mysql
首先安装依赖默认情况下已安装
图
[root@localhost src]# yum -y install ncurses-devel-5.5-24.20060715.i386.rpm
创建用户
[root@localhost src]# useradd -m -s /sbin/nologin mysql
解压 数据库源码包
[root@localhost src]# tar -zxvf mysql-5.0.87.tar.gz
进入目录进行预测试
[root@localhost mysql-5.0.87]# ./configure --prefix=/usr/local/mysql --without-debug --with-extra-charsets=utf8,gbk --enable-assembler --with-mysql-ldflags=-all-static --with-client-ldflags=-all-static --with-unix-socket-path=/tmp/mysql.sock --with-ssl
编译
安装
安装完成后复制文件和启动脚本
[root@localhost mysql-5.0.87]# cp support-files/my-medium.cnf /etc/my.cnf 复制配置文件
[root@localhost mysql-5.0.87]# cp support-files/mysql.server /etc/init.d/mysqld复制启动脚本
[root@localhost mysql-5.0.87]# chmod +x /etc/init.d/mysqld 给启动脚本执行权限
做一个软连接 为了以后方便我们为所有的二进制可执行文件和动态链接库文件
[root@localhost ~]# ln -s /usr/local/mysql/lib/mysql/lib* /usr/lib 动态数据库软连接
[root@localhost ~]# ln -s /usr/local/mysql/bin/* /usr/local/bin/可执行的二进制文件做软连接
初始化数据库
[root@localhost mysql-5.0.87]# mysql_install_db --user=mysql 以mysql的用户来安装数据库
[root@localhost mysql-5.0.87]# chown -r root.mysql /usr/local/mysql/更改安装目录属主为root,所属组为mysql
[root@localhost mysql-5.0.87]# chown -r mysql.mysql /usr/local/mysql/var/更改数据库目录属主和属组都为mysql
启动mysql
<code>service mysqld start</code>
现在我们查看mysql是否启动成功,mysql占用tcp的3306端口,我们查看端口是否被占用:
<code>[root@localhost mysql-5.0.87]# netstat -antlp |grep 3306</code>
<code>tcp 0 0 0.0.0.0:3306 0.0.0.0:* listen 6129/mysqld </code>
<code>[root@localhost mysql-5.0.87]#</code>
<code>下面安装php</code>
<code>首先安装依赖包</code>
<code>上传 </code>libmcrypt mhash mcrypt
下图
tar -jxvf libmcrypt-2.5.8.tar.bz2
<code>./configure</code>
<code>make</code>
tar -jxvf mhash-0.9.9.9.tar.bz2
cd mhash-0.9.9.9
./configure
make inst all
做连接
[root@localhost src]# ln -s /usr/local/lib/libmcrypt* /usr/lib
[root@localhost src]# ln -s /usr/local/lib/libmhash.* /usr/lib/
tar -zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8
下面安装php
1
tar -jxvf php-5.4.0.tar.bz2
2
cd php-5.4.0
3
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-zlib --enable-xml --disable-rpath --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --with-curl --with-curlwrappers --enable-fpm --enable-fastcgi --with-mcrypt --with-gd --with-openssl --with-mhash --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc -enable-zip --enable-soap
到这里整个lnmp已经安装完成.下面我们就配置php和nginx能运行php网站:
cp php.ini-production /usr/local/php/php.ini # 如果是开发就复制php.ini-development
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
ln -s /usr/local/php/bin/php /usr/bin/
配置php-fpm,编辑php-fpm.conf
vi /usr/local/php/etc/php-fpm.conf
找到listen那一行,修改成如下内容:
listen = /var/run/php-fpm/php-fpm.sock # 使用unix socket
启动php-fpm
mkdir /var/run/php-fpm
/usr/local/php/sbin/php-fpm
然后配置nginx,编辑nginx配置文件
vi /usr/local/nginx/conf/nginx.conf
修改nginx配置文件支持php
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.php index.html index.htm; # 添加index.php的首页文件
}
# 添加下面内容
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param script_filename $document_root/$fastcgi_script_name;
include fastcgi_params;
include fastcgi.conf;
修改完毕后保存退出重启nginx
pkill -9 nignx
/usr/local/nginx/sbin/nginx
然后在/usr/local/nginx/html下创建index.php
vi /usr/local/nginx/html/index.php
添加下面内容
<?php
phpinfo();
?>
保存退出后访问http://192.168.101.2/index.php,看到下面页面表示已经安装配置成功: