一、首先在本地安装好虚拟机,在虚拟机上安装centos6.5,由于习惯问题,不喜欢直接在虚拟机上操作linux系统,习惯了ssh过去,直接用xshell操作,这完全是个人习惯问题;
1、 用xshell通过ssh连接上去,要注意,当前虚拟机安装的系统是否安装了ssh;可以通过命令查看:rpm -qa | grep ssh;
2、 若是没有安装:使用命令 yum install ssh安装(注意这可能是要root权限)
3、 启动ssh:命令 service sshd start; 重启(service sshd restart)
4、 如果要设置开机启动ssh,可以使用命令:chkconfig sshd on
5、 若还是连不上去,则可能是系统防火墙的问题,关闭防火墙:service iptables stop,正常应该就可以连接上去了。
二、为了防止在搭建的过程中出现问题,建议先更新gcc、gcc++和yum更新,因为这里用yum安装:
1、 安装开发包和库文件命令: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 gd* bzip2 bzip2-devel ncurses ncurses-devel net-snmp-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 libmcrypt libmcrypt-devel
2、 更新yum命令:yum -y update
三、查看一下是否安装了apache、mysql、php,如果安装了把它们都卸载了:
1、 查看是否安装了apache:rpm –qa | grep httpd
2、 查看是否安装了mysql:rpm –qa | grep mysql
3、 查看是否安装了php:rpm –qa | grep php
4、 卸载apache:rpm -e httpd --nodeps
5、 卸载mysql:rpm -e mysql --nodeps
6、 卸载php:rpm -e php –nodeps
四、安装搭建lnmp
1、 安装nginx:yum install nginx;安装完后可以启动nginx:service nginx start;设置开启启动:chkconfig –levels 235 nginx on(设2、3、5级别开机启动)
注:如果提示:No package nginx available.解决方法:
安装epel(Extra Packages for Enterprise Linux)
a、去epel网站 http://fedoraproject.org/wiki/EPEL下载
b、我的系统是centos5.7,cpu是x86_64,所以我下载的是wget http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm
如果是centos6, 则应该下载 wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
c、安装epel
rpm -ivh epel-release-5-4.noarch.rpm
再次执行 yum install nginx,则会提示安装成功了
epel的安装跟centos的系统版本、cpu硬件架构有关,
查看系统版本(lsb-release -a),
查看cpu硬件架构(arch)
epel它是RHEL 的 Fedora 软件仓库,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。装上了 EPEL,就像在 Fedora 上一样,可以通过 yum install package-name,随意安装软件。
2、 安装mysql:yum install mysql mysql-server mysql-devel;启动mysql:service mysqld start;设置开机启动:chkconfig –levels 235 mysqld on;设置mysql账户密码:mysqladmin –u root password ’password’
3、 安装php:yum install php lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap php-tidy php-common php-devel php-fpm
//安装php和所需组件使PHP支持MySQL、FastCGI模式
安装FPM(FastCGI进程管理器)和mod_fastcig模块:yum
install php php-fpm mod_fastcgi
启动php-fpm进程:service php-fpm start
设置开机启动:chkconfig --levels 235 php-fpm on
五、配置nginx支持php
1、 将配置文件改为备份文件
mv /etc/nginx/nginx.conf
/etc/nginx/nginx.confbak
2、 由于原配置文件要自己去写因此可以使用默认的配置文件作为配置文件
cp /etc/nginx/nginx.conf.default
/etc/nginx/nginx.conf
3、 修改nginx配置文件,添加fastcgi支持
index index.php index.html index.htm;
//加入index.php
location ~ \.php$ {
root
/usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
/usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
//将以上代码注释去掉,并修改成nginx默认路径
4、 配置php,编辑php.ini文件,在文件末尾添加cig.fix_pathinfo
= 1
5、 重启nginx
service nginx restart
6、 重启php-fpm
service php-fpm restart
六、新建一个test.php文件,测试nginx是否解析php
1、 vim /usr/share/nginx/html/test.php
<?php phpinfo(); ?>
2、 通过url访问该文件:http://192.168.17.129/test.php
成功!