文件管理 · 2024年9月30日

centos搭建环境教程|怎样在centos上手动安装配置lnmp环境

A. 怎样在centos上手动安装配置lnmp环境

在centos上手动安装配置lnmp环境的方法

一、安装所需的库文件和编译环境

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers

二、安装PHP和MySQL

yum -y install php mysql mysql-server mysql-devel php-mysql php-cgi php-mbstring php-gd php-fastcgi

service mysqld start //启动mysql服务

chkconfig mysqld on //设置开机自动启动

三、安装nginx,由于CentOS没有默认的nginx软件包,需要启用REHL的附件

1. rpm -Uvh http://download.Fedora.RedHat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm

2. yum -y install nginx

chkconfig nginx on //设置开机启动

service nginx start //启动ngin服务

四、安装spawn-fcgi来运行php-cgi //spawn-fcgi是用来调用php提供动态php格式的网页

yum install spawn-fcgi

五、下载spawn-fcgi 的启动脚本

1. wget http://bash.cyberciti.biz/dl/419.sh.zip //这是别人写好的脚本,直接拿来用

2. unzip 419.sh.zip

3. mv 419.sh /etc/init.d/php_cgi

4. chmod +x /etc/init.d/php_cgi

/etc/init.d/php_cgi start //启动php_cgi

1. netstat -tulpn | grep :9000 //查看进程,查看服务有没有正常启动,若出现如下代表一切正常

tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 4352/php-cgi

六、配置nginx

vim /etc/nginx/nginx.conf //下面就是修改nginx.conf配置文件

user nginx //修改ngin守护进程的用户

worker_processes 4; //工作进程数,一般与 CPU 核数等同,但实际的可以多一些

error_log logs/error.log; //错误日志位置

events {

worker_connections 2048;#每个工作进程允许最大的同时连接数,可以稍微大一些,1024的倍数

}

gzip on;

server {

listen 80;

server_name 192.168.175.208; //nginx服务器地址

location ~ .php$ {

root html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name; //这里SCRIPT_FILENAME后面指定的是nginx的网站目录

include fastcgi_params;

}

把前面注释全部去掉,找到

location / {

root /html;

index index.php index.html index.htm;

}

修改为如上所示 主要是添加index 后面的index.php

七、编写脚本,测试nginx与php有没有结合

vim /usr/share/nginx/html/index.php

<?php

phpinfo

?>

最后通过浏览器访问服务器测试是否成功,出现php信息页面表示成功。

下面是我工作过程中遇到的一个问题。原来服务器上安装的有apache服务器。但是现在要把图片服务器换成nginx,图片服务器里面网页跳转的就不管用的。查找资料发现apache的rewrite规则需要转换成nginx识别的规则才行,通过下面的网页转换后,在nginx.conf中添加

http://www.anilcetin.com/convert-apache-htaccess-to-nginx/ //先转换原来的.htpaccess

然后在nginx.conf 中的server里添加这行内容,指定你的htaccess所在的位置

include /var/www/html/webshop/web/.htaccess;

小刚SEO为你解答