编译安装php7.3,nginx 及相关配置

原创
2019/07/12 13:05
阅读数 3.3K

先去官网下载源码包(以下均为阿里云centos进行配置,之前搞过腾讯云的,需要追加安装一些插件,可自行百度解决)

我的是php7.3.7 tat.gz包

wget下载,tar -xzvf 解压

cd 进目录

./configure --help 查看所需配置

我用的是 ./configure --prefix=/home/env/php73 --with-config-file-path=/home/env/php73 --enable-fpm --with-mysqli --with-pdo-mysql --enable-mbstring --with-gd --enable-soap --enable-cli --with-curl --with-openssl-dir

简要说明:

--prefix 安装路径    --with-config-file-path 配置文件路径 一旦编译了就不好改了,强迫症需谨慎

其他就是你需要用到的选项。我安装的是几个最基本的选项。

然后就是make 和make install 安装后会显示安装路径

首先在安装文件的路径下 cp php.ini-development /home/env/php73/php.ini

修改一下date.timezone="Asia/Shanghai"

在进入安装后php路径etc下将 cp php-fpm.conf.default php-fpm.conf 

在进入cd php-fpm.d/

cp www.conf.default www.conf

这时候就可以去sbin下启动php-fpm了

php-fpm的重启

killall php-fpm杀掉所有进程

安装nginx

我安装的是最新稳定版 wget http://nginx.org/download/nginx-1.16.0.tar.gz

解压后进入目录

./configure --prefix=/home/env/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre --user=nginx --group=nginx

然后还是make && make install

剩下的就是nginx配置了。

配置用户组及用户

groupadd nginx 创建用户组
useradd -s /sbin/nologin -g nginx nginx 创建用户

关于修改用户名或用户组名

groupmod -n newname oldname

给目录授权给你的项目目录也要授权,因为我的php-fpm也是走的nginx用户

chown -R  nginx:nginx  nginx/ 

关于nginx的配置

为了管理方便可以include vhosts,然后再vhosts里面进行配置

    server {
        listen       80; 
        server_name  localhost;
        root   /home/www/test;
        autoindex    on; 
        index        index.php index.html index.htm;

        location / { 
            if (!-e $request_filename) {
                rewrite  ^(.*)$  /index.php?s=/$1  last;
                break;
            }   
        }   
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }   

        location  ~ [^/]\.php(/|$) {
                fastcgi_split_path_info  ^(.+?\.php)(/.*)$;
                if (!-f $document_root$fastcgi_script_name) {
                        return 404;
                }   
                fastcgi_pass   127.0.0.1:9000;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                fastcgi_param  PATH_INFO        $fastcgi_path_info;
                fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
                include        fastcgi_params;
        }   

    }  

Tips:

可以区别名方便操作

vim ~/.bashrc  然后设置别名

source ~/.bashrc   刷新

我设置了

alias cphp='cd /home/env/php73'
alias php=/home/env/php73/bin/php
alias ngre='/home/php/nginx/sbin/nginx -s reload'
alias cncv='cd /home/env/nginx/conf/vhosts'
alias cwww='cd /home/www'

关于mysql可以查看我其他文章。

php扩展swoole和redis之类的后续会有分享

展开阅读全文
加载中

作者的其它热门文章

打赏
0
1 收藏
分享
打赏
0 评论
1 收藏
0
分享
返回顶部
顶部