热门标签 | 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






推荐阅读
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • 为什么多数程序员难以成为架构师?
    探讨80%的程序员为何难以晋升为架构师,涉及技术深度、经验积累和综合能力等方面。本文将详细解析Tomcat的配置和服务组件,帮助读者理解其内部机制。 ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • 本文详细解析了 Android 系统启动过程中的核心文件 `init.c`,探讨了其在系统初始化阶段的关键作用。通过对 `init.c` 的源代码进行深入分析,揭示了其如何管理进程、解析配置文件以及执行系统启动脚本。此外,文章还介绍了 `init` 进程的生命周期及其与内核的交互方式,为开发者提供了深入了解 Android 启动机制的宝贵资料。 ... [详细]
  • 为了在Hadoop 2.7.2中实现对Snappy压缩和解压功能的原生支持,本文详细介绍了如何重新编译Hadoop源代码,并优化其Native编译过程。通过这一优化,可以显著提升数据处理的效率和性能。此外,还探讨了编译过程中可能遇到的问题及其解决方案,为用户提供了一套完整的操作指南。 ... [详细]
  • 在Cisco IOS XR系统中,存在提供服务的服务器和使用这些服务的客户端。本文深入探讨了进程与线程状态转换机制,分析了其在系统性能优化中的关键作用,并提出了改进措施,以提高系统的响应速度和资源利用率。通过详细研究状态转换的各个环节,本文为开发人员和系统管理员提供了实用的指导,旨在提升整体系统效率和稳定性。 ... [详细]
  • 该问题可能由守护进程配置不当引起,例如未识别的JVM选项或内存分配不足。建议检查并调整JVM参数,确保为对象堆预留足够的内存空间(至少1572864KB)。此外,还可以优化应用程序的内存使用,减少不必要的内存消耗。 ... [详细]
  • 本文详细介绍了在Linux系统上编译安装MySQL 5.5源码的步骤。首先,通过Yum安装必要的依赖软件包,如GCC、GCC-C++等,确保编译环境的完备。接着,下载并解压MySQL 5.5的源码包,配置编译选项,进行编译和安装。最后,完成安装后,进行基本的配置和启动测试,确保MySQL服务正常运行。 ... [详细]
  • 在腾讯云服务器上部署Nginx的详细指南中,首先需要确保安装必要的依赖包。如果这些依赖包已安装,可直接跳过此步骤。具体命令包括 `yum -y install gcc gcc-c++ wget net-tools pcre-devel zlib-devel`。接下来,本文将详细介绍如何下载、编译和配置Nginx,以确保其在腾讯云服务器上顺利运行。此外,还将提供一些优化建议,帮助用户提升Nginx的性能和安全性。 ... [详细]
  • 在 Linux 系统中,`/proc` 目录实现了一种特殊的文件系统,称为 proc 文件系统。与传统的文件系统不同,proc 文件系统主要用于提供内核和进程信息的动态视图,通过文件和目录的形式呈现。这些信息包括系统状态、进程细节以及各种内核参数,为系统管理员和开发者提供了强大的诊断和调试工具。此外,proc 文件系统还支持实时读取和修改某些内核参数,增强了系统的灵活性和可配置性。 ... [详细]
  • malloc 是 C 语言中的一个标准库函数,全称为 memory allocation,即动态内存分配。它用于在程序运行时申请一块指定大小的连续内存区域,并返回该区域的起始地址。当无法预先确定内存的具体位置时,可以通过 malloc 动态分配内存。 ... [详细]
  • 解决Only fullscreen opaque activities can request orientation错误的方法
    本文介绍了在使用PictureSelectorLight第三方框架时遇到的Only fullscreen opaque activities can request orientation错误,并提供了一种有效的解决方案。 ... [详细]
  • 本文详细介绍了在 Ubuntu 系统上搭建 Hadoop 集群时遇到的 SSH 密钥认证问题及其解决方案。通过本文,读者可以了解如何在多台虚拟机之间实现无密码 SSH 登录,从而顺利启动 Hadoop 集群。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 如何在Java中使用DButils类
    这期内容当中小编将会给大家带来有关如何在Java中使用DButils类,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。D ... [详细]
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社区 版权所有