Linux环境Nginx安装与调试以及PHP安装

linux版本:64位CentOS 6.8

Nginx版本:nginx1.17.7

php版本:php5.6.40

说明:本博不定时更新为新版本

 

1.编译安装Nginx

官网:http://wiki.nginx.org/Install

下载:http://nginx.org/en/download.html

 

安装GCC

安装nginx需要gcc,如果因为需要安装grpc那么需要gcc4.8,可以先安装gcc

# wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtools-2.repo
# yum install -y devtoolset-2-gcc devtoolset-2-binutils
# yum install -y devtoolset-2-gcc-c++ devtoolset-2-gcc-gfortran
# scl enable devtoolset-2 bash
# source /opt/rh/devtoolset-2/enable
# gcc --version

如果不按照grpc可以忽略这个,直接安装yum 安装gcc即可

# yum -y install gcc-c++

 

安装lrzsz 下载上传文件

# yum -y install lrzsz

安装nginx

# wget http://nginx.org/download/nginx-1.17.7.tar.gz

# tar -zvxf nginx-1.17.7.tar.gz

# cd ./nginx-1.17.7

# ./configure --prefix=/usr/local/nginx

# make && make install

 

安装Nginx时报错

错误提示:./configure: error: the HTTP rewrite module requires the PCRE library.

安装pcre-devel解决问题
# yum -y install pcre-devel


错误提示:./configure: error: the HTTP cache module requires md5 functions
from OpenSSL library. You can either disable the module by using
--without-http-cache option, or install the OpenSSL library into the system,
or build the OpenSSL library statically from the source with nginx by using
--with-http_ssl_module --with-openssl=<path> options.

解决办法:

# yum -y install openssl openssl-devel


或者一并安装

# yum -y install pcre-devel openssl openssl-devel

 

错误提示:./configure: error: the HTTP gzip module requires the zlib library.

# yum install -y zlib-devel

启动nginx

# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

 

安装成功查看nginx进程

# ps aux | grep nginx

 

测试页面,直接输入服务器ip

其实nginx默认的web工作目录在/usr/local/nginx/html

可以修改nginx的配置文件nginx.conf改变到其他路径

 

防火墙配置

注意如果你希望在本地机器例如xp访问虚拟机的网页,如果是centos6需要修改防火墙启动80端口

# cd /etc/sysconfig

修改iptables文件,或者直接用vim编辑

# vim /etc/sysconfig/iptables

添加下面一行,打开防火墙80端口:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

重启防火墙
# /etc/init.d/iptables restart

查看CentOS防火墙信息:/etc/init.d/iptables status

关闭CentOS防火墙服务:/etc/init.d/iptables stop

 

如果没有防火墙文件

需要

# iptables -P OUTPUT ACCEPT
# service iptables save
# service iptables restart

然后重写iptables文件

其实完整的防火墙文件是这样的

 

# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
#-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

 

停止nginx

查询nginx主进程号
#ps -ef | grep nginx

从容停止Nginx:
kill -QUIT 主进程号
快速停止Nginx:
kill -TERM 主进程号
强制停止Nginx:
pkill -9 nginx

 

开启目录自动显示

 

nginx的配置文件nginx.conf在

# cd /usr/local/nginx/conf

有时候需要开启目录自动显示功能

 

http {
    include       mime.types;
    default_type  application/octet-stream;
	#自动显示目录
	autoindex on;

 

重启nginx

# /usr/local/nginx/sbin/nginx -s reload

 

获取安装信息

如果需要重新安装nginx,需要知道之前的安装信息

# /usr/local/nginx/sbin/nginx -V

 

2.安装php

www.php.net找下载最新的版本

http://www.php.net/downloads.php

下载解压

# wget  https://www.php.net/distributions/php-5.6.40.tar.gz

# tar zxvf php-5.6.40.tar.gz

# cd php-5.6.40

 

配置

#./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-mysql \
--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-inl
  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
张恩民 老师 的PHP视频教程【www.php100.com】 绝对是PHP教程中的经典。 PHP100视频教程目录(共112集) PHP100视频教程1:环境配置与代码调试 PHP100视频教程2:PHP的数据类型与源码调试 PHP100视频教程3:常用PHP运算类型介绍与应用 PHP100视频教程4: PHP条件语句介绍与应用 PHP100视频教程5:PHP循环语句的介绍与应用 PHP100视频教程6:PHP数组的创建修改应用 PHP100视频教程7:PHP函数和自定义函数 PHP100视频教程8:Mysql 简介和创建新的数据库 PHP100视频教程9:数据库中的常用SQL语句 PHP100视频教程10:MYSQL在PHP5中的应用 PHP100视频教程11:学习制作PHP+MYSQL留言板(上) PHP100视频教程12:学习制作PHP+MYSQL留言板(下) PHP100视频教程13:PHP+MYSQL分页原理 PHP100视频教程14:PHP上传原理及应用 PHP100视频教程15:PHP生成HTML文件原理 PHP100视频教程16:PHP小偷程序原理和实例 PHP100视频教程17:PHP面向对象开发的学习(一) PHP100视频教程18:PHP面向对象开发的学习(二) PHP100视频教程19:PHP面向对象开发的学习(三) PHP100视频教程20:PHP面向对象开发的学习(四) PHP100视频教程21:PHP面向对象开发的学习(五) PHP100视频教程22:PHP面向对象开发的学习(六) PHP100视频教程23:PHP面向对象开发的学习(七) PHP100视频教程24:PHP面向对象开发的学习(八) PHP100视频教程25:PHP面向对象开发的学习(九) PHP100视频教程26:制作自己的PHP+MYSQL的类 PHP100视频教程27:PHP模板引擎Smarty入门使用 PHP100视频教程28:PHP模板引擎Smarty的变量操作符 PHP100视频教程29:PHP模板引擎Smarty内置函数 PHP100视频教程30:PHP模板引擎Smarty缓存应用 PHP100视频教程31:PHP在线编辑器fckeditor应用 PHP100视频教程32:PHP5中Cookie与 Session详解 PHP100视频教程33:PHP5中图片验证码的制作(上) PHP100视频教程34:PHP5中图片中文验证码(下) PHP100视频教程35:PHP5文字图片混合水印与缩略图 PHP100视频教程36:PHP中正则表达式学习及应用(一) PHP100视频教程37:PHP中正则表达式学习及应用(二) PHP100视频教程38:PHP中正则表达式学习及应用(三) PHP100视频教程39:PHP中正则表达式学习及应用(四) PHP100视频教程40:PHP中开发自己的-UBB代码 PHP100视频教程41:PHP站内搜索、多关键字、加亮显示 PHP100视频教程42:PHP通过mail()或Socket发邮件 PHP100视频教程43:PHP中MVC学习之ThinkPHP(上) PHP100视频教程44:PHP中MVC学习之ThinkPHP(下) PHP100视频教程45:如何用PHP开发一个完整的网站 PHP100视频教程46:PHPMyAdmin功能操作详解 PHP100视频教程47:PHP输出CSV和EXCEL两种简单的方法 PHP100视频教程48:Ajax+PHP快速上手及应用 PHP100视频教程49: Ajax+PHP打造等待进度条效果(二) PHP100视频教程50: Ajax+PHP检查用户名或邮件(三) PHP100视频教程51:PHP+MYSQL会员系统的开发(上) PHP100视频教程52:PHP+MYSQL会员系统的开发(下) PHP100视频教程53:PHP如何防止注入及开发安全 PHP100视频教程54:Apache Rewrite 拟静态配置 PHP100视频教程55:PHP5中使用PDO连接数据库 PHP100视频教程56:制作PHP安装程序的原理和步骤 PHP100视频教程57:PHP备份数据库原理和方法 PHP100视频教程58:快速设计一个企业网站之BIWEB PHP100视频教程59:关于BIWEB常见问题和结构分析 PHP100视频教程60:PHP与数据库代码开发规范 PHP100视频教程61:PHP+Mysql新闻系统的开发一 PHP100视频教程62:PHP+Mysql新闻系统的开发二 PHP100视频教程63:PHP+Mysql新闻系统的开发三(上) PHP100视频教程64:PHP+Mysql新闻系统的开发四 PHP100视频教程65:PHP+Mysql新闻系统的开发五 PHP100视频教程66:PHP+Mysql新闻系统的开发六 PHP100视频教程67:PHP+Mysql新闻系统的开发七 PHP100视频教程68:PHP+Mysql新闻系统的开发八 PHP100视频教程69:PHP+Mysql新闻系统的开发九 PHP100视频教程70:PHP 5.3.1 + Apache + Mysql配置 PHP100视频教程71:PHP SQLite 的使用和配置 PHP100视频教程72:PHP+SQLite 常用函数及应用 PHP100视频教程73:PHP MemCached高级缓存配置 PHP100视频教程74:PHP MemCached 高级缓存应用 PHP100视频教程75:Zend framework 配置与调试 PHP100视频教程76:Zend framework 数据库操之读取与插入 PHP100视频教程77:Zend framework数据库操作之编辑和视图函数 PHP100视频教程78:PHP+Flash多文件异步上传 swfupload PHP100视频教程79:PHP上传RAR压缩包并解压目录 PHP100视频教程80:ADODB PHP 数据库万能引擎类(上) PHP100视频教程81:ADODB PHP 数据库万能引擎类(下) PHP100视频教程82: PHP开发通用采集入库程序 PHP100视频教程83: PHP开发通用采集入库程序二 PHP100视频教程84:PHP开发通用采集入库程序三 PHP100视频教程85:PHP 图表类 JPGraph 入门配置与应用 PHP100视频教程86:PHP JPGraph 中文字体和背景设置 PHP100视频教程87:PHP 之 CURL 传输与获取功能 PHP100视频教程88:PHP 之 CURL模拟登陆并获取数据 PHP100视频教程89:PHP XML 的 DOMDocument 读取功能 PHP100视频教程90:PHP DOM 创建生成多功能 XML文件 PHP100视频教程91:PHP修改和删除XML内容的原理和方法 PHP100视频教程92:在线支付接口之PHP支付宝接口开发 PHP100视频教程93:在线支付接口之PHP云网接口开发 PHP100视频教程94:SVN (Subversion) 配置与安装调试 PHP100视频教程95:SVN (Subversion) 应用与技巧 PHP100视频教程96:PHP程序员经典面试&笔试题目解析(上) PHP100视频教程97:PHP程序员经典面试&笔试题目解析(下) PHP100视频教程98:PHP会员权限交叉多类型的控制(上) PHP100视频教程99:PHP会员权限交叉多类型的控制(下) PHP100视频教程100:PHP程序员的学习之路和未来职业规划 PHP100视频教程101:PHP5.3 Xdebug 调试器配置与应用 PHP100视频教程102:PHP5.3 Xdebug 错误分析与性能调试 PHP100视频教程103:JQuery 之 Javascript 基础(一) PHP100视频教程104:JQuery 之 Javascript 基础(二) PHP100视频教程105:JQuery 之 Javascript 基础(三) PHP100视频教程106:JQuery 之语法模式与开发基础 PHP100视频教程107:JQuery 之选择器、事件器详解 PHP100视频教程108:JQuery之各类动画效果的实现 PHP100视频教程109:JQuery 之 Ajax 开发详解 PHP100视频教程110:Jquery案例 之 双下拉框内容移动 PHP100视频教程111:Jquery案例 之 复选框与隔行换色 PHP100视频教程112:Jquery案例 之 双击编辑异步更新

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值