本文中参照了部分网络上的内容,由本人实践,并修正了很多问题和centos7的命令
1:查看环境:
[root@iZ28ht3hvtpZ project]# cat /etc/redhat-release
CentOS Linux release 7.0.1406 (Core)
2:配置CentOS 7.0 第三方yum源(CentOS默认的标准源里没有nginx软件包)
# wget http://www.atomicorp.com/installers/atomic
# sh ./atomic
# yum check-update
3:安装开发包和库文件
# yum -y install ntp make openssl openssl-devel pcre pcre-devel libpng
# yum -y install libpng-devel libjpeg-6b libjpeg-devel-6b freetype freetype-devel gd gd-devel zlib zlib-devel
# yum -y install gcc gcc-c++ libXpm libXpm-devel ncurses ncurses-devel libmcrypt libmcrypt-devel libxml2
# yum -y install libxml2-devel imake autoconf automake screen sysstat compat-libstdc++-33 curl curl-devel
4:安装nginx
# yum install nginx
# systemctl start nginx.service
5:安装mysql
# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
# sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
# sudo yum install mysql-server
# mysql -u root
登录时有可能报这样的错:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2),原因是/var/lib/mysql的访问权限问题。下面的命令把/var/lib/mysql的拥有者改为当前用户:
# sudo chown -R openscanner:openscanner /var/lib/mysql
mysql>use mysql;
mysql>update mysql.user set password = PASSWORD('123456') where user='root';
#创建业务数据库 例如:www
mysql>CREATE DATABASE www;
#创建XXXX用户与密码(123456)并设置为从安装mysql服务的机器本地访问
mysql > grant all on www.* to 'XXXX'@'localhost' identified by '123456';
#设置openscanner用户与密码,并从任何机器都可以访问mysql
mysql > grant all on www.* to 'XXXX'@'%' identified by '123456';
mysql > exit;
6:安装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和所需组件使PHP支持MySQL、FastCGI模式
#yum install php-tidy php-common php-devel php-fpm php-mysql
# systemctl restart php-fpm.service
7:配置nginx支持php
# mv /etc/nginx/nginx.conf /etc/nginx/nginx.confbak
//将配置文件改为备份文件
# cp /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf
//由于原配置文件要自己去写因此可以使用默认的配置文件作为配置文件
//修改nginx配置文件,添加fastcgi支持
//root设定为本地业务代码路径
user guest;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
gzip on;
server {
listen 80;
server_name localhost;
root /usr/local/src/project;
charset utf-8;
#access_log logs/host.access.log main;
location / {
index index.php;
if ( !-f $request_filename ){
rewrite ^/(.+)$ /index.php?$1& last;
}
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
include fastcgi_params;
}
}
}
8:配置php//编辑文件php.ini,在文件末尾添加cgi.fix_pathinfo = 1
# vi /etc/php.ini
9:重启nginx php-fpm
# systemctl restart nginx.service
# systemctl restart php-fpm.service
10:建立info.php文件
# vi /usr/local/src/project/info.php
<?php
phpinfo();
?>
11:测试nginx是否解析php (外网IP:192.168.1.105)
本地浏览器输入:192.168.1.105/info.php
显示php界面 环境搭建成功