1. yum -y install wget make vim install gcc gcc-c++ ncurses ncurses-devel autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers pcre pcre-devel  zlip zlip-devel

新建软件安装目录

  1. mkdir /usr/local/webserver

php依赖库安装

libxml2(包含库和实用工具用于解析XML文件)

  1. tar zxvf libxml2-2.9.0.tar.gz -C /usr/local/webserver/
  2. cd /usr/local/webserver/libxml2-2.9.0
  3. ./configure
  4. make&&make install

libmcrypt(加密算法扩展库支持DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+等算法)

  1. tar zxvf libmcrypt-2.5.8.tar.gz -C /usr/local/webserver/
  2. cd /usr/local/webserver/libmcrypt-2.5.8
  3. ./configure
  4. make && make install

nginx安装

  1. tar zxvf nginx-1.5.9.tar.gz -C /usr/local/webserver/
  2. mv /usr/local/webserver/nginx-1.5.9  /usr/local/webserver/nginx
  3. cd /usr/local/webserver/nginx
  4. ./configure
  5. make && make install
  1. vi /etc/init.d/nginx
  1. #!/bin/sh
  2. #
  3. # nginx - this script starts and stops the nginx daemin
  4. #
  5. # chkconfig:   - 85 15
  6. # description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
  7. #               proxy and IMAP/POP3 proxy server
  8. # processname: nginx
  9. # config:      /usr/local/nginx/conf/nginx.conf
  10. # pidfile:     /usr/local/nginx/logs/nginx.pid
  11. # Source function library.
  12. . /etc/rc.d/init.d/functions
  13. # Source networking configuration.
  14. . /etc/sysconfig/network
  15. # Check that networking is up.
  16. [ "$NETWORKING" = "no" ] && exit 0
  17. nginx="/usr/local/nginx/sbin/nginx"
  18. prog=$(basename $nginx)
  19. NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
  20. lockfile=/var/lock/subsys/nginx
  21. start() {
  22. [ -x $nginx ] || exit 5
  23. [ -f $NGINX_CONF_FILE ] || exit 6
  24. echo -n $"Starting $prog: "
  25. daemon $nginx -c $NGINX_CONF_FILE
  26. retval=$?
  27. echo
  28. [ $retval -eq 0 ] && touch $lockfile
  29. return $retval
  30. }
  31. stop() {
  32. echo -n $"Stopping $prog: "
  33. killproc $prog -QUIT
  34. retval=$?
  35. echo
  36. [ $retval -eq 0 ] && rm -f $lockfile
  37. return $retval
  38. }
  39. restart() {
  40. configtest || return $?
  41. stop
  42. start
  43. }
  44. reload() {
  45. configtest || return $?
  46. echo -n $"Reloading $prog: "
  47. killproc $nginx -HUP
  48. RETVAL=$?
  49. echo
  50. }
  51. force_reload() {
  52. restart
  53. }
  54. configtest() {
  55. $nginx -t -c $NGINX_CONF_FILE
  56. }
  57. rh_status() {
  58. status $prog
  59. }
  60. rh_status_q() {
  61. rh_status >/dev/null 2>&1
  62. }
  63. case "$1" in
  64. start)
  65. rh_status_q && exit 0
  66. $1
  67. ;;
  68. stop)
  69. rh_status_q || exit 0
  70. $1
  71. ;;
  72. restart|configtest)
  73. $1
  74. ;;
  75. reload)
  76. rh_status_q || exit 7
  77. $1
  78. ;;
  79. force-reload)
  80. force_reload
  81. ;;
  82. status)
  83. rh_status
  84. ;;
  85. condrestart|try-restart)
  86. rh_status_q || exit 0
  87. ;;
  88. *)
  89. echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
  90. exit 2
  91. esac

修改nginx脚本权限

  1. chmod +x /etc/init.d/nginx

添加到系统服务

  1. /sbin/chkconfig nginx on

mysql安装

  1. groupadd mysql
  2. useradd -r -g mysql mysql
  3. tar zxvf mysql-5.6.16-linux-glibc2.5-x86_64.tar.gz -C /usr/local/webserver/
  4. mv /usr/local/webserver/mysql-5.6.16-linux-glibc2.5-x86_64 /usr/local/webserver/mysql
  5. ## ln -s /usr/local/webserver/mysql-5.6.16-linux-glibc2.5-x86_64 /usr/local/webserver/mysql
  6. cd /usr/local/webserver/mysql/
  7. chown -R mysql .
  8. chgrp -R mysql .
  9. scripts/mysql_install_db --user=mysql
  10. chown -R root .
  11. chown -R mysql data
  1. cp support-files/my-default.cnf /etc/my.cnf
  2. bin/mysqld_safe --user=mysql &

修改mysql.server脚本

  1. vi support-files/mysql.server
  1. basedir=
  2. datadir=
  3. 改为
  4. basedir=/usr/local/webserver/mysql
  5. datadir=/usr/local/webserver/mysql/data

配置启动脚本

  1. cp support-files/mysql.server /etc/init.d/mysqld

添加到环境变量

  1. vi ~/.bash_profile
  1. PATH=$PATH:$HOME/bin:/usr/local/webserver/mysql/bin

php安装

gd库安装

  1. tar zxvf gd-2.0.33.tar.gz
  2. cd gd-2.0.33
  3. ./configure --prefix=/usr/local/webserver/gd2/
  4. make && make install
  1. tar zxvf php-5.3.28.tar.gz -C /usr/local/webserver/
  2. mv /usr/local/webserver/php-5.3.28/ /usr/local/webserver/php
  3. cd /usr/local/webserver/php
  4. ./configure --enable-fpm --with-mysql=/usr/local/webserver/mysql/ --with-mysqli=/usr/local/webserver/mysql/bin/mysql_config --with-config-file-path=/usr/local/webserver/php/ --with-openssl --enable-mbstring --with-zlib --enable-xml --with-gd=/usr/local/webserver/gd2/ --with-jpeg-dir --enable-bcmath --with-mcrypt --with-iconv --enable-pcntl --enable-shmop --enable-simplexml --enable-ftp
  5. make && make install
  1. cp php.ini-development /usr/local/webserver/php/php.ini

配置php.ini

  1. vim php.ini
  1. ;date.timezone =
  2. 改为 date.timezone = prc

配置nginx.conf

  1. mv /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf_bak
  2. vim /usr/local/nginx/conf/nginx.conf
  1. user  root root;
  2. worker_processes  1;
  3. #error_log  logs/error.log;
  4. #error_log  logs/error.log  notice;
  5. #error_log  logs/error.log  info;
  6. #pid        logs/nginx.pid;
  7. events {
  8. worker_connections  1024;
  9. }
  10. http {
  11. include       mime.types;
  12. default_type  application/octet-stream;
  13. #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
  14. #                  '$status $body_bytes_sent "$http_referer" '
  15. #                  '"$http_user_agent" "$http_x_forwarded_for"';
  16. #access_log  logs/access.log  main;
  17. sendfile        on;
  18. #tcp_nopush     on;
  19. #keepalive_timeout  0;
  20. keepalive_timeout  65;
  21. server {
  22. listen          80;
  23. server_name     192.168.51.33;
  24. root            /home/www;
  25. autoindex on;
  26. autoindex_exact_size off;
  27. autoindex_localtime on;
  28. #配置站点伪静态(此处配置好之后,需要在ecstore/config/config.php中修改“define('WITH_REWRITE',true);”)
  29. if ($request_uri ~ (.+?\.php)(|/.*)$ ){
  30. break;
  31. }
  32. if (!-e $request_filename) {
  33. rewrite ^/(.*)$ /index.php/$1 last;
  34. }
  35. location / {
  36. index  index.php index.html index.htm;
  37. }
  38. error_page   500 502 503 504  /50x.html;
  39. location = /50x.html {
  40. root   html;
  41. }
  42. location ~ \.php {
  43. include        fastcgi_params;
  44. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  45. #设置pathinfo
  46. set $path_info "";
  47. set $real_script_name $fastcgi_script_name;
  48. if ($fastcgi_script_name ~ "^(.+?.php)(/.+)?$") {
  49. set $script_name $1;
  50. set $path_info $2;
  51. }
  52. fastcgi_param SCRIPT_NAME $script_name;
  53. fastcgi_param PATH_INFO $path_info;
  54. fastcgi_pass   127.0.0.1:9000;
  55. fastcgi_index  index.php;
  56. }
  57. }
  58. # deny access to .htaccess files, if Apache's document root
  59. # concurs with nginx's one
  60. #
  61. #location ~ /\.ht {
  62. #    deny  all;
  63. #}
  64. # another virtual host using mix of IP-, name-, and port-based configuration
  65. #
  66. #server {
  67. #    listen       8000;
  68. #    listen       somename:8080;
  69. #    server_name  somename  alias  another.alias;
  70. #    location / {
  71. #        root   html;
  72. #        index  index.html index.htm;
  73. #    }
  74. #}
  75. # HTTPS server
  76. #
  77. #server {
  78. #    listen       443;
  79. #    server_name  localhost;
  80. #    ssl                  on;
  81. #    ssl_certificate      cert.pem;
  82. #    ssl_certificate_key  cert.key;
  83. #    ssl_session_timeout  5m;
  84. #    ssl_protocols  SSLv2 SSLv3 TLSv1;
  85. #    ssl_ciphers  HIGH:!aNULL:!MD5;
  86. #    ssl_prefer_server_ciphers   on;
  87. #    location / {
  88. #        root   html;
  89. #        index  index.html index.htm;
  90. #    }
  91. #}
  92. }

配置php.ini

  1. vi /usr/local/webserver/php/php.ini
  1. enable_dl = On
  2. cgi.force_redirect = 0
  3. cgi.fix_pathinfo=1
  4. fastcgi.impersonate = 1
  5. cgi.rfc2616_headers = 1
  6. allow_url_fopen = On

配置php-fpm启动脚本

  1. vi /etc/init.d/php-fpm
  1. #! /bin/sh
  2. ### BEGIN INIT INFO
  3. # Provides:          php-fpm
  4. # Required-Start:    $remote_fs $network
  5. # Required-Stop:     $remote_fs $network
  6. # Default-Start:     2 3 4 5
  7. # Default-Stop:      0 1 6
  8. # Short-Description: starts php-fpm
  9. # Description:       starts the PHP FastCGI Process Manager daemon
  10. ### END INIT INFO
  11. prefix=/usr/local/
  12. php_fpm_BIN=${prefix}/sbin/php-fpm
  13. php_fpm_CONF=${prefix}/etc/php-fpm.conf
  14. php_fpm_PID=${prefix}/var/run/php-fpm.pid
  15. php_opts="--fpm-config $php_fpm_CONF"
  16. php_pid="--pid $php_fpm_PID"
  17. wait_for_pid () {
  18. try=0
  19. while test $try -lt 35 ; do
  20. case "$1" in
  21. 'created')
  22. if [ -f "$2" ] ; then
  23. try=''
  24. break
  25. fi
  26. ;;
  27. 'removed')
  28. if [ ! -f "$2" ] ; then
  29. try=''
  30. break
  31. fi
  32. ;;
  33. esac
  34. echo -n .
  35. try=`expr $try + 1`
  36. sleep 1
  37. done
  38. }
  39. case "$1" in
  40. start)
  41. echo -n "Starting php-fpm "
  42. $php_fpm_BIN $php_opts $php_pid
  43. if [ "$?" != 0 ] ; then
  44. echo " failed"
  45. exit 1
  46. fi
  47. wait_for_pid created $php_fpm_PID
  48. if [ -n "$try" ] ; then
  49. echo " failed"
  50. exit 1
  51. else
  52. echo " done"
  53. fi
  54. ;;
  55. stop)
  56. echo -n "Gracefully shutting down php-fpm "
  57. if [ ! -r $php_fpm_PID ] ; then
  58. echo "warning, no pid file found - php-fpm is not running ?"
  59. exit 1
  60. fi
  61. kill -QUIT `cat $php_fpm_PID`
  62. wait_for_pid removed $php_fpm_PID
  63. if [ -n "$try" ] ; then
  64. echo " failed. Use force-exit"
  65. exit 1
  66. else
  67. echo " done"
  68. fi
  69. ;;
  70. force-quit)
  71. echo -n "Terminating php-fpm "
  72. if [ ! -r $php_fpm_PID ] ; then
  73. echo "warning, no pid file found - php-fpm is not running ?"
  74. exit 1
  75. fi
  76. kill -TERM `cat $php_fpm_PID`
  77. wait_for_pid removed $php_fpm_PID
  78. if [ -n "$try" ] ; then
  79. echo " failed"
  80. exit 1
  81. else
  82. echo " done"
  83. fi
  84. ;;
  85. restart)
  86. $0 stop
  87. $0 start
  88. ;;
  89. reload)
  90. echo -n "Reload service php-fpm "
  91. if [ ! -r $php_fpm_PID ] ; then
  92. echo "warning, no pid file found - php-fpm is not running ?"
  93. exit 1
  94. fi
  95. kill -USR2 `cat $php_fpm_PID`
  96. echo " done"
  97. ;;
  98. *)
  99. echo "Usage: $0 {start|stop|force-quit|restart|reload}"
  100. exit 1
  101. ;;
  102. esac

脚本执行权限

  1. cd /usr/local/etc && cp php-fpm.conf.default php-fpm.conf
  2. chmod +x /etc/init.d/php-fpm

设置开机启动

  1. /sbin/chkconfig php-fpm on

/******下面是ecstore所需******/

ZendGuard安装

  1. tar zxvf ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz -C /usr/local/webserver/
  2. mv /usr/local/webserver/ZendGuardLoader-php-5.3-linux-glibc23-x86_64 /usr/local/webserver/ZendGuardLoader
  3. cd /usr/local/webserver/ZendGuardLoader
  4. cp php-5.3.x/ZendGuardLoader.so /usr/local/webserver/php/ext/

配置php.ini

  1. vi /usr/local/webserver/php/php.ini
    1. [Zend Guard]
    2. ;/usr/local/webserver/php/ext/ZendGuardLoader.so  这个是你当时指定的zend的目录
    3. zend_extension=/usr/local/webserver/php/ext/ZendGuardLoader.so
    4. zend_loader.enable=1
    5. zend_loader.disable_licensing=0
    6. zend_loader.obfuscation_level_support=3
    7. zend_loader.license_path=

Linux 下的php,nginx,mysql的安装的更多相关文章

  1. linux下导入、导出mysql数据库命令 下载文件到本地

    一.下载到本地 yum install lrzsz sz filename  下载 rz filename  上传   linux下导入.导出mysql数据库命令 一.导出数据库用mysqldump命 ...

  2. ubuntu下的apache+php+mysql的安装

    平时我都时在windows下搭配apache+php+mysql环境的,只不过后来听别人说在linux下搭配apache+php+mysql更受欢迎,而且一般公司也是用这样的搭配,所以今天在试着在ub ...

  3. Linux下beego及beego相关插件安装

    Linux下beego及beego相关插件安装 1.下载及配置go环境看见链接: http://golang.org/dl/ 网盘:链接: https://pan.baidu.com/s/1MveUM ...

  4. Linux下以tar包的形式安装mysql8.0.28

    Linux下以tar包的形式安装mysql8.0.28 1.首先卸载自带的Mysql-libs(如果之前安装过mysql,要全都卸载掉) rpm -qa | grep -i -E mysql\|mar ...

  5. Linux下SVN服务器安装配置及客户端安装说明

    原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_ ...

  6. VMware Linux下拖拽补丁vmtools的安装和卸载

    Linux下拖拽补丁vmtools的安装和卸载 by:授客 QQ:1033553122 Vmware 8.0.4为例子 步骤1.VM->Install Vmware Tools... 步骤2.查 ...

  7. Linux下 rz 和 sz 命令的安装与使用

    目录 Linux下 rz 和 sz 命令的安装与使用 rz/sz命令的安装 sz命令-发送文件到本地(下载): rz命令-本地上传文件到服务器(上传): 声明 Linux下 rz 和 sz 命令的安装 ...

  8. linux下应用crontab对mysql数据库进行定时备份

    linux下应用crontab对mysql数据库进行定时备份 @(编程) mysql数据库提供了备份命令mysqldump,可以结合crontab命令进行定时备份. 我写了一个mysqlbackup. ...

  9. Linux下Apache2.2和PHP5的安装配置

    Linux下Apache2.2和PHP5的安装配置 环境介绍 我安装使用的Linux版本为CentOS6.5最精简版,Apache为2.2.29,PHP版本为5.4.28. 系统安装 首先安装Cent ...

随机推荐

  1. Android平台的事件处理机制和手指滑动例子

    Android平台的事件处理机制有两种 基于回调机制的事件处理:Android平台中,每个View都有自己的处理事件的回调方法,开发人员可以通过重写View中的这些回调方法来实现需要的响应事件. 基于 ...

  2. 平时的笔记04:处理stagger模块

    #! /usr/bin/env python3 # # __init__.py # From the stagger project: http://code.google.com/p/stagger ...

  3. [[UIScreen mainScreen] scale]详解

    [[UIScreen mainScreen] scale]详解 当屏幕分别为640x940时[[UIScreen mainScreen] scale]=2.0 当屏幕分别为320x480时[[UISc ...

  4. [Immutable.js] Working with Subsets of an Immutable.js Map()

    Immutable.js offers methods to break immutable structures into subsets much like Array--for instance ...

  5. CreateFile使用方法和样例

    函数原型: HANDLE CreateFile( LPCTSTR lpFileName, //指向文件名称的指针 DWORD dwDesiredAccess, //訪问模式(写/读) DWORD dw ...

  6. servlet获得完整路径

    request.getQueryString() request.getParameterMap() request.getParameterNames() 在servlet中GET请求可以通过Htt ...

  7. SQLLoader8(加载的数据中有换行符处理方法)

    SQLLDR加载的数据中有换行符处理方法1.创建测试表: CREATE TABLE MANAGER( MGRNO NUMBER, MNAME ), JOB ), REMARK ) ); 2.创建控制文 ...

  8. 网页body中background在ie中显示不出来

    网页body中background在ie中显示不出来 | 浏览:349 | 更新:2014-03-11 14:03 刚才上班在公司网站上写一个页面,在谷歌浏览器,火狐浏览器里调试完后,一切正常,忽然想 ...

  9. Cortex-M3知识点

    1.不再像别的ARM7那样从thumb状态和ARM状态来回切换 Thumb-2指令集横空出世,Cortex-M3不支持ARM指令集 2.BKP备份寄存器(42个16位寄存器组成),用来存储用户应用程序 ...

  10. (原)使用vectot的.end()报错:iterators incompatible

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5070672.html 参考网址: http://blog.csdn.net/yxnyxnyxnyxny ...