热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CenteOS6.4-i386操作系统安装nginx-1.5.2+php5.5+swoole+MySql5.1

个人通过网络整合多人配置文章(跪拜大神)安装163的yum源:http:blog.csdn.netfuwen1989articledetails51078793nginx-1.5.2安
个人通过网络整合多人配置文章(跪拜大神)


 安装163的 yum源:http://blog.csdn.net/fuwen1989/article/details/51078793

  • nginx-1.5.2安装

1.环境准备

yum -y  install gcc gcc-c++ autoconf automake make

yum -y  install zlib zlib-devel openssl openssl--devel pcre pcre-devel

 

2.安装nginx

wget  http://nginx.org/download/nginx-1.5.2.tar.gz 

tar  xzvf nginx-1.5.2.tar.gz

cd nginx-1.5.2

./configure --prefix=/usr/local/nginx--with-http_stub_status_module--with-http_stub_status_module--with-http_realip_module --with-http_image_filter_module

make

makeinstall

打开

http://nginx.org/download/

查看相关版本

3.检查nginx是否安装成功

cd  /usr/local/nginx/sbin

./nginx -t

        结果显示:

        nginx: the configuration file/usr/local/nginx/conf/nginx.conf syntax is ok

        nginx: configuration file/usr/local/nginx/conf/nginx.conf test is successful

 如果这里报错的话 很有可能是你的那个pid的位置 ,你没有建立相关的文件夹

4. 添加nginx为系统服务

 {

/etc/init.d/目录下编写脚本,名为nginx

#!/bin/sh 

# nginx - this script starts and stops the nginx daemon 

# chkconfig:   - 85 15 
# description: Nginx is an HTTP(S) server, HTTP(S) reverse \ 
#               proxyand IMAP/POP3 proxy server 
# processname: nginx 
# config:      /etc/nginx/nginx.conf 
# config:      /etc/sysconfig/nginx 
# pidfile:     /var/run/nginx.pid 

# Source function library. 
. /etc/rc.d/init.d/functions 

# Source networking configuration. 
. /etc/sysconfig/network 

# Check that networking is up. 
[ "$NETWORKING" = "no" ] && exit 0 

nginx="/usr/local/nginx/sbin/nginx" 
prog=$(basename $nginx) 

NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf" 

[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx 

lockfile=/var/lock/subsys/nginx 

start() { 
    [ -x $nginx ] || exit 5 
    [ -f $NGINX_CONF_FILE ] || exit 6 
    echo -n $"Starting $prog: " 
    daemon $nginx -c $NGINX_CONF_FILE 
    retval=$? 
    echo 
    [ $retval -eq 0 ] && touch $lockfile 
    return $retval 


stop() { 
    echo -n $"Stopping $prog: " 
    killproc $prog -QUIT 
    retval=$? 
    echo 
    [ $retval -eq 0 ] && rm -f $lockfile 
    return $retval 
killall -9 nginx 


restart() { 
    configtest || return $? 
    stop 
    sleep 1 
    start 


reload() { 
    configtest || return $? 
    echo -n $"Reloading $prog: " 
    killproc $nginx -HUP 
RETVAL=$? 
    echo 


force_reload() { 
    restart 


configtest() { 
$nginx -t -c $NGINX_CONF_FILE 


rh_status() { 
    status $prog 


rh_status_q() { 
    rh_status >/dev/null 2>&1 


case "$1" in 
    start) 
        rh_status_q && exit0 
    $1 
        ;; 
    stop) 
        rh_status_q || exit 0 
        $1 
        ;; 
    restart|configtest) 
        $1 
        ;; 
    reload) 
        rh_status_q || exit 7 
        $1 
        ;; 
    force-reload) 
        force_reload 
        ;; 
    status) 
        rh_status 
        ;; 
    condrestart|try-restart) 
        rh_status_q || exit 0 
            ;; 
    *)    
      echo $"Usage: $0{start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}" 
        exit 2 

esac  


[root@example ~]# cp nginx /etc/init.d/
[root@example ~]# chmod 755 /etc/init.d/nginx
[root@example ~]# chkconfig --add nginx

nginx启动、停止、无间断服务重启

[root@example ~]# service nginx start

[root@example ~]# service nginx stop

[root@example ~]# service nginx reload

完毕我想应该也可以按照此方法添加其他的服务

}

5. 检查nginx是否启动成功

浏览器中输入 http://你定义的IP:你定义的端口/

默认:127.0.0.1

如果看到这样一行大黑字Welcome to nginx!,就证明nginx已经工作了

6.配置nginx

vim/usr/local/nginx/conf/nginx.conf

 

server {

        listen      80 default;

        server_name localhost;

        root /var/www/html/default;

        #charsetkoi8-r;

 

        #access_log logs/host.access.log  main;

 

        location / {

        #    root   html;

           index  index.html index.htm;

        }

....................

}

如上红色加粗显示部分,做三处修改:

 

listen 80后插入空格default”

在里面加入一行 root/var/www/html/default;

注释掉root html;一行

上面的server{....}是定义的一台虚拟主机,我们刚加入的一行是定义这个虚假主机的web目录。listen行的default是表示这一个server{...}节点是默认的虚假主机(默认站点)

 

执行 nginx -t测试刚才的nginx配置文件是否有语法错误:

 

[root@fsvps nginx]# nginx -t

nginx: the configuration file/usr/local/conf/nginx/nginx.conf syntax is ok

nginx: configuration file/usr/local/conf/nginx/nginx.conf test is successful

显示没有错误,检测通过。如果不是这样,请返回仔细检查你的配置文件是否哪里写错了,注意行尾要有英文分号。

 ===============================================================================================


 

  • 安装PHP5.5

1. 卸载

# yum remove php  php-bcmath php-cli php-common  php-develphp-fpm    php-gd php-imap  php-ldap php-mbstringphp-mcrypt php-mysql   php-odbc   php-pdo  php-pear  php-pecl-igbinary  php-xml php-xmlrpc 

2. 再安装 :
# yum install php55w  php55w-bcmath php55w-cli php55w-common php55w-devel php55w-fpm    php55w-gd php55w-imap php55w-ldap php55w-mbstring php55w-mcrypt php55w-mysql  php55w-odbc   php55w-pdo   php55w-pear php55w-pecl-igbinary  php55w-xml php55w-xmlrpc php55w-opcache php55w-intlphp55w-pecl-memcache 

 

3. 安装swoole:

https://github.com/swoole/swoole-src/releases

 

# wgethttps://github.com/swoole/swoole-src/archive/swoole-1.7.6-stable.tar.gz

tar zxvf swoole-1.7.6-stable.tar.gz

swoole-1.7.6-stable.tar.gz

phpize

./configure

make

make install

 

下面扩展加入到php.ini

extension=swoole.so

linuxphp.ini在哪

find /-name php.ini

php –m 查看已安装插件

 

4.配置nginx支持php

vim/usr/local/nginx/conf/nginx.conf

location / {

 

       root   /usr/local/nginx/html;

 

       index  index.html index.htm index.php;

 

}

server { 

    listen       80; 

    server_name  localhost; 

    autoindex    on; 

    #charsetkoi8-r; 

    #access_log  /var/log/nginx/log/host.access.log  main; 

 

    location / { 

        root  /usr/local/nginx/html; 

        index  index.html index.htm index.php; 

    } 

 

    location ~ \.php${ 

        root          /usr/local/nginx/html; 

       fastcgi_pass  127.0.0.1:9000; 

       fastcgi_index  index.php; 

        fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html $fastcgi_script_name; 

        include        fastcgi_params; 

    }.... 

以下全是#号。

 

 

 配置php-fpm
vim /etc/php-fpm.d/www.conf


@php_fpm_user@改为当前系统的用户名,如下图,然后重新启动就ok

 

5.启动服务并检测

chkconfig php-fpm on    #设置php-fpm自启动
chkconfig mysqld on     #设置mysqld自启动
service nginx restart   #重新启动nginx
service php-fpm start   #启动php-fpm
service mysqld start    #启动mysqld

6.新建index.php

ROOT目录  /usr/local/nginx/html

 

Vim index.php


error_reporting(0); //抑制所有错误信息
@header("content-Type: text/html; charset=utf-8"); //语言强制
ob_start();

function valid_email($str)
{
return ( ! preg_match("/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix", $str)) ? FALSE : TRUE;
}

//检测PHP设置参数
function show($varName)
{
switch($result = get_cfg_var($varName))
{
case 0:
return '×';
break;

case 1:
return '';
break;

default:
return $result;
break;
}
}


if ($_GET['act'] == "phpinfo")
{
phpinfo();
exit();
}
elseif($_GET['act'] == "Function")
{
$arr = get_defined_functions();
Function php()
{
}
echo "
";
Echo "这里显示系统所支持的所有函数,和自定义函数\n";
print_r($arr);
echo "
";
exit();
}elseif($_GET['act'] == "disable_functions")
{
$disFuns=get_cfg_var("disable_functions");
if(empty($disFuns))
{
$arr = '×';
}
else
{
$arr = $disFuns;
}
Function php()
{
}
echo "
";
Echo "这里显示系统被禁用的函数\n";
print_r($arr);
echo "
";
exit();
}

//MySQL检测
if ($_POST['act'] == 'MySQL检测')
{
$host = isset($_POST['host']) ? trim($_POST['host']) : '';
$port = isset($_POST['port']) ? (int) $_POST['port'] : '';
$login = isset($_POST['login']) ? trim($_POST['login']) : '';
$password = isset($_POST['password']) ? trim($_POST['password']) : '';
$host = preg_match('~[^a-z0-9\-\.]+~i', $host) ? '' : $host;
$port = intval($port) ? intval($port) : '';
$login = preg_match('~[^a-z0-9\_\-]+~i', $login) ? '' : htmlspecialchars($login);
$password = is_string($password) ? htmlspecialchars($password) : '';
}
elseif ($_POST['act'] == '函数检测')
{
$funRe = "函数".$_POST['funName']."支持状况检测结果:".isfun1($_POST['funName']);
}
elseif ($_POST['act'] == '邮件检测')
{
$mailRe = "邮件发送检测结果:发送";
if($_SERVER['SERVER_PORT']==80){$mailCOntent= "http://".$_SERVER['SERVER_NAME'].($_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME']);}
else{$mailCOntent= "http://".$_SERVER['SERVER_NAME'].":".$_SERVER['SERVER_PORT'].($_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME']);}
$mailRe .= (false !== @mail($_POST["mailAdd"], $mailContent, "This is a test mail!\n\nhttp://lnmp.org")) ? "完成":"失败";
}

// 检测函数支持
function isfun($funName = '')
{
if (!$funName || trim($funName) == '' || preg_match('~[^a-z0-9\_]+~i', $funName, $tmp)) return '错误';
return (false !== function_exists($funName)) ? '' : '×';
}
function isfun1($funName = '')
{
if (!$funName || trim($funName) == '' || preg_match('~[^a-z0-9\_]+~i', $funName, $tmp)) return '错误';
return (false !== function_exists($funName)) ? '√' : '×';
}

?>



















































服务器参数
服务器域名/IP地址 ()
服务器标识
服务器操作系统  内核版本: 服务器解译引擎
服务器语言 服务器端口
服务器主机名 绝对路径
管理员邮箱 探针路径











PHP已编译模块检测

$able=get_loaded_extensions();
foreach ($able as $key=>$value) {
if ($key!=0 && $key%13==0) {
echo '
';
}
echo "$value  ";
}
?>























































































































PHP相关参数
PHP信息(phpinfo):
$phpSelf = $_SERVER[PHP_SELF] ? $_SERVER[PHP_SELF] : $_SERVER[SCRIPT_NAME];
$disFuns=get_cfg_var("disable_functions");
?>
×' :"PHPINFO";?>
PHP版本(php_version):
PHP运行方式: 脚本占用最大内存(memory_limit):
PHP安全模式(safe_mode): POST方法提交最大限制(post_max_size):
上传文件最大限制(upload_max_filesize): 浮点型数据显示的有效位数(precision):
脚本超时时间(max_execution_time): socket超时时间(default_socket_timeout):
PHP页面根目录(doc_root): 用户根目录(user_dir):
dl()函数(enable_dl): 指定包含文件目录(include_path):
显示错误信息(display_errors): 自定义全局变量(register_globals):
数据反斜杠转义(magic_quotes_gpc): ""短标签(short_open_tag):
"<% %>"ASP风格标记(asp_tags): 忽略重复错误信息(ignore_repeated_errors):
忽略重复的错误源(ignore_repeated_source): 报告内存泄漏(report_memleaks):
自动字符串转义(magic_quotes_gpc): 外部字符串自动转义(magic_quotes_runtime):
打开远程文件(allow_url_fopen): 声明argv和argc变量(register_argc_argv):
COOKIE 支持: √' : '×';?> 拼写检查(ASpell Library):
高精度数学运算(BCMath): PREL相容语法(PCRE):
PDF文档支持: SNMP网络管理协议:
VMailMgr邮件处理: Curl支持:
SMTP支持: √' : '×';?> SMTP地址: ×';?>
默认支持函数(enable_functions):请点这里查看详细!
被禁用的函数(disable_functions):
$disFuns=get_cfg_var("disable_functions");
if(empty($disFuns))
{
echo '×';
}
else
{
//echo $disFuns;
$disFuns_array = explode(',',$disFuns);
foreach ($disFuns_array as $key=>$value)
{
if ($key!=0 && $key%5==0) {
echo '
';
}
echo "$value  ";
}
}

?>


























































组件支持
FTP支持: XML解析支持:
Session支持: Socket支持:
Calendar支持
允许URL打开文件:
GD库支持:
if(function_exists(gd_info)) {
$gd_info = @gd_info();
echo $gd_info["GD Version"];
}else{echo '×';}
?>
压缩文件支持(Zlib):
IMAP电子邮件系统函数库: 历法运算函数库:
正则表达式函数库: WDDX支持:
Iconv编码转换: mbstring:
高精度数学运算: LDAP目录协议:
MCrypt加密处理: 哈稀计算:























第三方组件
Zend版本 ×';}else{echo $zend_version;}?>
$PHP_VERSION = PHP_VERSION;
$PHP_VERSION = substr($PHP_VERSION,2,1);
if($PHP_VERSION > 2)
{
echo "ZendGuardLoader[启用]";
}
else
{
echo "Zend Optimizer";
}
?>
2){echo (get_cfg_var("zend_loader.enable"))?'':'×';} else{if(function_exists('zend_optimizer_version')){echo zend_optimizer_version();}else{echo (get_cfg_var("zend_optimizer.optimization_level")||get_cfg_var("zend_extension_manager.optimizer_ts")||get_cfg_var("zend.ze1_compatibility_mode")||get_cfg_var("zend_extension_ts"))?'':'×';}}?>
eAccelerator ×";} ?> ioncube ×";}?>
XCache ×";} ?> APC ×";} ?>















































数据库支持
MySQL 数据库:
if(function_exists("mysql_get_server_info")) {
$s = @mysql_get_server_info();
$s = $s ? '  mysql_server 版本:'.$s : '';
$c = '  mysql_client 版本:'.@mysql_get_client_info();
echo $s;
}
?>
ODBC 数据库:
Oracle 数据库: SQL Server 数据库:
dBASE 数据库: mSQL 数据库:
SQLite 数据库: √ ';echo "SQLite3 Ver ";echo $sqliteVer[versionString];}else {echo isfun("sqlite_close");if(isfun("sqlite_close") == '') {echo "  版本: ".@sqlite_libversion();}}?> Hyperwave 数据库:
Postgre SQL 数据库: Informix 数据库:
DBA 数据库: DBM 数据库:
FilePro 数据库: SyBase 数据库:


" method="post">








MySQL数据库连接检测

地址:
端口:
用户名:
密码:



if ($_POST['act'] == 'MySQL检测') {
if(function_exists("mysql_close")==1) {
$link = @mysql_connect($host.":".$port,$login,$password);
if ($link){
echo "";
} else {
echo "";
}
} else {
echo "";
}
}
?>








if ($_POST['act'] == '函数检测') {
echo "";
}
?>
函数检测

请输入您要检测的函数:














  • 安装Mysql5.1
1.查看CentOS自带mysql是否已安装。
输入:yum list installed | grep mysql


2.若有自带安装的mysql,
输入:yum -y remove mysql-libs.x86_64,若有多个依赖文件则依次卸载。


3.查看yum库上的mysql版本信息(CentOS系统需要正常连接网络)。
输入:yum list | grep mysql 或 yum -y list mysql*


4.使用yum安装mysql数据库。
输入:yum -y install mysql-server mysql mysql-devel ,命令将:mysql-server、mysql、mysql-devel都安装好,

当结果显示为“Complete!”即安装完毕。


5.查看刚安装mysql数据库版本信息。
输入:rpm -qi mysql-server






推荐阅读
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • MongoDB集群配置:副本集与分片详解
    本文详细介绍了如何在MongoDB中配置副本集(Replica Sets)和分片(Sharding),并提供了具体的步骤和命令,帮助读者理解并实现高可用性和水平扩展的MongoDB集群。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • 本文深入探讨 MyBatis 中动态 SQL 的使用方法,包括 if/where、trim 自定义字符串截取规则、choose 分支选择、封装查询和修改条件的 where/set 标签、批量处理的 foreach 标签以及内置参数和 bind 的用法。 ... [详细]
  • 深入解析Spring Cloud Ribbon负载均衡机制
    本文详细介绍了Spring Cloud中的Ribbon组件如何实现服务调用的负载均衡。通过分析其工作原理、源码结构及配置方式,帮助读者理解Ribbon在分布式系统中的重要作用。 ... [详细]
  • 解决PHP与MySQL连接时出现500错误的方法
    本文详细探讨了当使用PHP连接MySQL数据库时遇到500内部服务器错误的多种解决方案,提供了详尽的操作步骤和专业建议。无论是初学者还是有经验的开发者,都能从中受益。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 本文详细探讨了在Android 8.0设备上使用ChinaCock的TCCBarcodeScanner进行扫码时出现的应用闪退问题,并提供了解决方案。通过调整配置文件,可以有效避免这一问题。 ... [详细]
  • 解读MySQL查询执行计划的详细指南
    本文旨在帮助开发者和数据库管理员深入了解如何解读MySQL查询执行计划。通过详细的解析,您将掌握优化查询性能的关键技巧,了解各种访问类型和额外信息的含义。 ... [详细]
  • 本文介绍了如何通过 Maven 依赖引入 SQLiteJDBC 和 HikariCP 包,从而在 Java 应用中高效地连接和操作 SQLite 数据库。文章提供了详细的代码示例,并解释了每个步骤的实现细节。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
author-avatar
小破孩子520
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有