“` 以前都是偷懒直接yum安装,今天勤奋那么一点点使用编译安装的方式
老生常谈的问题了···········但是为了以后方便找到 还是记录一下 “`
由于拿了一台全新的服务器啥都没有
所以先装gcc
1、安装GCC
yum install gcc gcc-c++ autoconf automake
2、安装PHP相关的扩展
yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel MySQL pcre-devel
yum -y install curl-devel
yum -y install libxslt-devel
yum install openssl openssl-devel
3、下载PHP7并解压
wget http://at1.php.net/distributions/php-7.0.2.tar.gz
tar -zxvf php-7.0.2.tar.gz
cd php-7.0.2.tar.gz/
4、安装PHP7
这里有个小坑
大部分教程都是进到目录后直接
make && make install
但是这样会出个小问题 报错make: *** No targets specified and no makefile found. Stop. 会提示你找不到makefile 文件这是你需要
先执行
./configure --prefix=/usr/local/php --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip
配置项 来生成一个makefile 文件
make && make install
漫长的等待后··············
5、配置PHP
cp php.ini-development /usr/local/php/lib/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
cp -R ./sapi/fpm/php-fpm /etc/init.d/php-fpm
需要注意的是php7中www.conf这个配置文件配置phpfpm的端口号等信息,如果你修改默认的9000端口号需在这里改,再改nginx的配置
6、启动
/etc/init.d/php-fpm
PHP 到这里就结束了
因为我这里还要安装nginx
7、安装nginx
#yun install nginx
查看Nginx安装路径
#rpm -ql nginx
cd /usr/share/nginx/html
#vim index.php
<?php phpinfo(); ?>
8、配置nginx
#vim /etc/nginx/nginx.conf
在配置文件的server中加入以下配置
location ~ \.php$ {
root /usr/share/nginx/html; #指定php的根目录
fastcgi_pass 127.0.0.1:9000;#php-fpm的默认端口是9000
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
重新加载Nginx
#/usr/sbin/nginx -s reload
这是你就可以访问看看了·············可是结果可能是(nginx)403
排查过程打开nginx 的错误日志
cat /var/log/nginx/error.log;
可以看到详细的报错信息
没有设置站点的索引文件
解决办法
解决了··················心得报错的第一反应应该是找对应的错误日志,看病也要先知道自己的病在哪!!!