源码安装Apache+PHP+Mysql实战

安装的过程整体要分为三大过程:

  • 安装 apache 和 mysql
  • 安装 PHP
  • 安装 memcached php-memcache

安装 apache 和 mysql

第一步 下载 apache、mysql 并且为二者建立对应的安装目录

1
2
3
4
5
6
mkdir –p /opt/soft
cd /opt/soft
wget http://download.chyangwa.com/linux/apache/httpd-2.2.4.tar.gz
wget http://download.chyangwa.com/linux/MySQL/mysql-5.0.19.tar.gz
mkdir –p /usr/local/apache
mkdir –p /usr/local/mysql

SSH配置私钥登陆服务器

前言

本文基于实际Linux管理工作,实例讲解工作中使用ssh证书登录的实际流程,讲解ssh证书登录的配置原理,基于配置原理,解决实际工作中,windows下使用SecureCRT证书登录的各种问题,以及实现hadoop集群部署要求的无密码跳转问题。

ssh有密码登录和证书登录,初学者都喜欢用密码登录,甚至是root账户登录,密码是123456。但是在实际工作中,尤其是互联网公司,基本都是证书登录的。内网的机器有可能是通过密码登录的,但在外网的机器,如果是密码登录,很容易受到攻击,真正的生产环境中,ssh登录都是证书登录。

证书登录的步骤

1.客户端生成证书:私钥和公钥,然后私钥放在客户端,妥当保存,一般为了安全,访问有黑客拷贝客户端的私钥,客户端在生成私钥时,会设置一个密码,以后每次登录ssh服务器时,客户端都要输入密码解开私钥(如果工作中,你使用了一个没有密码的私钥,有一天服务器被黑了,你是跳到黄河都洗不清)。

2.服务器添加信用公钥:把客户端生成的公钥,上传到ssh服务器,添加到指定的文件中,这样,就完成ssh证书登录的配置了。

假设客户端想通过私钥要登录其他ssh服务器,同理,可以把公钥上传到其他ssh服务器。

真实的工作中: 员工生成好私钥和公钥(千万要记得设置私钥密码),然后把公钥发给运维人员,运维人员会登记你的公钥,为你开通一台或者多台服务器的权限,然后员工就可以通过一个私钥,登录他有权限的服务器做系统维护等工作,所以,员工是有责任保护他的私钥的,如果被别人恶意拷贝,你又没有设置私钥密码,那么,服务器就全完了,员工也可以放长假了。

PHP 填坑记之 FastCGI 与 mod_php 详解

网上对于 FastCGI 与 mod_php 的知识比较杂乱而不全面,故在此整理一下,以便入门学习者查阅方便

背景

PHP最常用的方式是以模块的方式(mod_php)运行在 Apache 中,也是 Apache 运行 PHP 的默认方式;

但在 Nginx 中,Nginx 又使用的是 PHP-FPM ,但是 PHP-FPM 到底是个什么东东?跟 php 有什么关系?今天我们一起来探究一番

PHP处理器(PHP handlers)

首先需要记住的是,任何一种 Web 服务器(Apache、Nginx等)都是被设计成向用户发送html、图片等静态资源的,Web 服务器自身并不能解释任何动态脚本(PHP、Python等)

PHP 处理器就是用来解释 Web 应用中的 PHP 代码,并将它解释为 HTML 或其他静态资源,然后将解析的结果传给 Web 服务器,最后再由 Web 服务器发送给用户

大多数的 Web 服务器都不能解析 PHP 代码,因此它需要一个能解析 PHP 代码的程序,这就是 PHP 处理器

PHP 编码规范

一、文件格式

  1. 对于只含有 php 代码的文件,我们将在文件结尾处忽略掉 “?>” 。这是为了防止多余的空格或者其它字符影响到代码。
    例如:

    1
    2
    <?php
    $foo = 'foo';
  2. 缩进应该能够反映出代码的逻辑结果,尽量使用四个空格,禁止使用制表符TAB,因为这样能够保证有跨客户端编程器软件的灵活性。
    例如:

    1
    2
    3
    4
    5
    6
    if (1 == $x) {
    $indented_code = 1;
    if (1 == $new_line) {
    $more_indented_code = 1;
    }
    }
  3. 变量赋值必须保持相等间距和排列。
    例如:

    1
    2
    $variable = 'demo';
    $var = 'demo2';