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. IOS 监听通讯录是否改变

    ABAddressBookRef addressBook = ABAddressBookCreateWithOptions(NULL, &error); ABAddressBookRegist ...

  2. iOS 推送证书制作 (JAVA/PHP)

    // aps_development.cer 转化成pem openssl x509 -in aps_development.cer -inform der -out PushChatCert.pem ...

  3. iOS开发之Crash分析,以及收集

    一  先谈谈iOS的Crash收集方式: 1. APP 发生crash,用户手机手机上肯定会有crash纪录,当然删除了该app,或是删了再装 crash纪录还是没了. 2. 如果用户设置-隐私  同 ...

  4. Super Jumping! Jumping! Jumping!(dp)

    Super Jumping! Jumping! Jumping! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 ...

  5. Swiper滑动Html5手机浏览器自适应

    手机网页能通过window.screen.height, width获取屏幕分辨率,于是能够通过分辨率比率来计算高度. window.onload=function(){ var swiper = d ...

  6. [Cycle.js] From toy DOM Driver to real DOM Driver

    This lessons shows how we are able to easily swap our toy DOM Driver with the actual Cycle.js DOM Dr ...

  7. 使用INTERVAL YEAR TO MONTH类型

    Oracle Database 9i数据库引入了一种新特性,可以用来存储时间间隔.时间间隔的例子包括: ● 1年零3个月 ● 25个月 ● -3天5小时16分 ● 1天7小时 ● -56小时 注意: ...

  8. java编程中的Java.Lang.Math类

    1. Math.PI  :表示的是圆周率常量: 2.Math.E    :表示的是普通常量(e): 3.abs()方法: 表示取绝对值 eg1: int x = Math.abs(50L);     ...

  9. asp.net UpdatePanel 不能局部刷新问题汇总

    1.web.config 配置问题.   关于web.config的配置方面网上有很多资料参考,按照其方法做即可实现. 2.网站 Framework 版本变化造成不能局部刷新问题    版本更新时,会 ...

  10. ADO.NET程序访问数据的组件

    组成--数据集(内存中的数据库) --DataSet数据集 --DataTable数据表 --DataColumn数据列 --DataRow数据行 --DataView数据视图--NET数据提供程序 ...