龙芯编辑安装 php 和 nginx

2020-05-21 16:40:00
wyd621
原创 0
安装前准备
对于nginx编译安装需要先安装编译 的工具,然后再安装nginx依赖

yum -y install gcc gcc-c++ autoconf automake make      
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel

添加www用户
添加www用户,如果没有可能会报错nginx: [emerg] getpwnam(“www”) failed
#添加www 用户
groupadd -f www
useradd -g www www

下载nginx
#管网镜像
http://nginx.org/download/

#获取nginx,官方地址
wget http://nginx.org/download/nginx-1.10.1.tar.gz

#1.6.2 这个老版本,不支持 --with-stream 模块,1.9.0后,才支持的,建议大家使用的时候注意
#wget http://nginx.org/download/nginx-1.6.2.tar.gz

#这个是我自己七牛的服务器
wget http://yellowcong.qiniudn.com/nginx-1.10.1.tar.gz
#nginx 2019/4/2  新得版本
wget http://nginx.org/download/nginx-1.15.9.tar.gz

#解压 /usr/local/nginx 目录
tar -zxvf nginx-1.10.1.tar.gz

安装nginx
第一步是配置,第二步是编译安装

配置nginx
#进入到nginx-1.10.1 ,并配置nginx
cd nginx-1.10.1 

#配置nginx
#--prefix 指定安装的目录
#/usr/local/nginx 是安装目录,不能和自己下载的文件目录重了
#./configure --prefix=/usr/local/nginx

#带ssl  stub_status模块 添加strem模块 –with-stream,这样就能传输tcp协议了
#http_stub_status_module  状态监控
#http_ssl_module    配置https
#stream  配置tcp得转发
#http_gzip_static_module 压缩
#http_sub_module  替换请求
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-stream

#带用户得方式
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-stream --with-http_gzip_static_module --with-http_sub_module

到nginx的目录下,然后配置nginx
看到了结果,就差不多 代表成功了
编译安装
只要出现上面的,差不多就是完事了,可以编译了,如果还是有错误,可以使用yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel命令,安装所有依赖
#编译安装
make && make install

安装成功
安装成功后,会在./configure --prefix=/usr/local/nginx,指定的目录/usr/local/nginx创建4个 文件夹。

#启动 nginx服务
/usr/local/nginx/sbin/nginx
#停止服务
/usr/local/nginx/sbin/nginx -s stop

#重启服务
/usr/local/nginx/sbin/nginx -s reload 

#查看启动情况
ps -ef|grep nginx

#查看是否启动成功
curl 192.168.100.10

#查看端口情况
netstat -ano|grep 80

#查看nginx版本

./sbin/nginx -V



nginx FastCGI错误Primary script unknown解决办法

在centos上成功编译安装nginx 1.4、php 5.4并成功启动nginx和php-fpm后,访问php提示"File not found.",同时在错误日志中看到:

复制代码代码如下:
2013/10/22 20:05:49 [error] 12691#0: *6 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 192.168.168.1, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.168.133"

错误解决方法:
在Nginx配置文件中找到定义调用脚本文件的地方,如:

复制代码代码如下:
fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

修改成如下方式($document_root):
复制代码代码如下:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

提示:
$document_root 代表当前请求在root指令中指定的值。如:

复制代码代码如下:
location / {
       root   /usr/local/nginx/html;
       index  index.php index.html index.htm;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

上面配置中的$document_root就是针对/usr/local/nginx/html目录下的php文件进行解析。



php编译安装

php编译安装

添加用户

useradd -r -s /sbin/nologin php-fpm 

下载解压安装包

cd /data/pkg
wget http://php.net/get/php-7.2.2.tar.gz/from/this/mirror 
mv mirror php-7.2.2.tar.gz
tar zxvf php-7.2.2.tar.gz
cd php-7.2.2 

安装依赖

yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel libxslt libicu-devel libxslt-devel 

编译安装

./configure \
--prefix=/usr/local/php-7.2.2 \
--with-mhash \
--with-openssl \
--with-config-file-path=/usr/local/php-7.2.2/etc \
--disable-short-tags \
--enable-fpm \
--with-fpm-user=php-fpm --with-fpm-group=php-fpm \
--enable-xml \
--with-libxml-dir \
--enable-bcmath \
--enable-calendar \
--enable-intl \
--enable-mbstring \
--enable-pcntl \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-zip \
--enable-mbregex \
--enable-mysqlnd \
--enable-mysqlnd-compression-support \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-gd \
--enable-ftp \
--with-curl \
--with-xsl \
--with-iconv \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--enable-sysvsem \
--enable-inline-optimization \
--with-xmlrpc \
--with-gettext --build=mips64
 make -j 4 && make install 


建立软链

ln -s /usr/local/php-7.2.2/ /usr/local/php
ln -s /usr/local/php/bin/php /usr/local/bin
ln -s /usr/local/php/sbin/php-fpm /usr/local/sbin 

对php-fpm运行用户进行设置

cd /data/pkg/php-7.2.2
cp ./php.ini-development ./php.ini-production /usr/local/php/etc
cp /usr/local/php/etc/php.ini-development /usr/local/php/etc/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 

建立软链

ln -s /usr/local/php/etc/php.ini /usr/local/etc/
ln -s /usr/local/php/etc/php-fpm.conf /usr/local/etc/
ln -s /usr/local/php/etc/php-fpm.d/www.conf /usr/local/etc/ 

配置环境变量,加入全局命令

vim /etc/profile PATH=$PATH:/usr/local/php/bin
export PATH source /etc/profile 

启动php-fpm 服务

/usr/local/sbin/php-fpm 

查看是否启动

netstat -lnt | grep 9000 

杀死php-fpm

killall php-fpm
发表评论
评论通过审核后显示。