nologin mysql

  初次编译mysql的时候时间比较长,请耐心等待吧.
  cd /usr/local/src
  tar -zxf mysql-5.6.13.tar.gz
  cd mysql-5.6.13
  #注意下面是cmake .注意点
  cmake .
  make && make install
  #复制mysql配置文件
  cp support-files/my-default.cnf /etc/my.cnf
  #创建系统数据库表
  cd /usr/local/mysql
  scripts/mysql_install_db --user=mysql
  #更改权限
  cd /usr/local/mysql
  chown -R root:mysql .
  chown -R mysql:mysql data

  #把mysql添加到系统服务中去
  cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
  #启动mysql启动的时候,一直不动的话按下enter.,就行了
  /usr/local/mysql/bin/mysqld_safe --user=mysql &
  #查看mysql是否启动
  netstat -tunpl | grep 3306
  #或者pstree,看到有mysqld进程也行
  #修改mysql密码
  /usr/local/mysql/bin/mysqladmin -u root password "xxxxx"
  #进入mysql中删除空密码和匿名用户
  /usr/local/mysql/bin/mysql -u root -p
  select host,user,password from mysql.user;
  delete from mysql.user where password="" or user="";
  flush privileges;
  #也可以在mysql修改用户密码(只是说明一下)
  set password form 'root'@'localhost' = password('123456');
  #关闭mysql的时候可以使用
  /usr/local/mysql/bin/mysqladmin -u root -p shutdown
  //phpfensi.com
  #把mysql添加到开机启动
  vim /etc/rc.local
  #在最后再加一行
  /usr/local/mysql/bin/mysqld_safe --user=mysql &
  
  #最后做一个软链接方便使用mysql
  
  ln -s /usr/local/mysql/bin/mysql /usr/bin/
  nginx安装(此处我本人安装了基于nginx改版的tengine,nginx的安装跟这基本完全一样,你完全可以参照并完整安装).
 
  nginx安装前编译安装pcre zlib openssl[openssl安装用./config]
 
  pcre安装:
 
  cd /usr/local/src
  tar -jxf pcre-8.31.tar.bz2
  cd pcre-8.31
  ./configure
  make && make install
  zlib安装:
 
  cd /usr/local/src
  tar -zxf zlib-1.2.8.tar.gz
  cd zlib-1.2.8
  ./configure
  make && make install
  openssl安装:
 
  cd /usr/local/src
  tar -zxf openssl-1.0.1c.tar.gz
  cd openssl-1.0.1c
  ./config
  make && make install
  //注意这时我安装tengine了,如果你用nginx,完全参照安装就行
  
  cd /usr/local/src
  useradd -M -s /sbin/nologin nginx
  #如果是nginx,请把这里换成nginx
  tar -zxf tengine-2.0.1.tar.gz
  cd tengine-2.0.1
  #注意的是with-pcre这些都指向/usr/local/src这种目录,这非常奇怪
  ./configure --with-pcre=/usr/local/src/pcre-8.31 --with-http_ssl_module --with-zlib=/usr/local/src/zlib-1.2.8 --with-openssl=/usr/local/src/openssl-1.0.1c --with-http_concat_module=shared(注:如果是nginx的话不需要 --with-http_concat_module=shared)
  
  make && make install
  #做软链接方便nginx启动
  ln -s /usr/local/nginx/sbin/nginx /usr/bin/
  #修改nginx配置文件
  vim /usr/local/nginx/conf/nginx.conf
  把#user nobody 改成 user nginx;
 
  #测试一下nginx配置文件
  nginx -t
  #启动nginx
  nginx
  
  #说一下nginx启动的一些事情
  #一般来说在nginx的配置文件修改后进行如下操作,nginx -t检测一下配置文件是否正确,如果正确的话
  #再使用nginx -s reload 使nginx平滑启动
  
  #把nginx添加到开机启动
  vim /etc/rc.local
  #在最后新加一行
  /usr/local/nginx/sbin/nginx
  #查看nginx是否启动
  netstat -tunpl | grep 80
  pstree 看下有没有nginx就行了
  安装php:
 
  cd /usr/local/src
  useradd -M -s /sbin/nologin php
  tar -jxf php-5.5.12.tar.bz2
  cd php-5.5.12
  
  ./configure --enable-opcache --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring=all --with-pdo-mysql --enable-sockets --enable-mbstring --enable-fpm --with-curl --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --enable-xml --with-gd --with-mcrypt --with-libxml-dir=/usr --enable-xml --with-openssl --with-iconv=/usr/local/iconv
  
  make ZEND_EXTRA_LIBS='-liconv'
  make install
  
  cp php.ini-development /usr/local/php/etc/php.ini
  
  #配置php-fpm
  cd /usr/local/php/etc
  cp php-fpm.conf.default php-fpm.conf
  vim php-fpm.conf
  将
  user = nobody
  group = nobody
  改为
  user = php
  group = php
  #启动php-fpm
  /usr/local/php/sbin/php-fpm
  #把php-fpm添加到开机启动
  vim /etc/rc.local
  #最后一行加上
  /usr/local/php/sbin/php-fpm
  
  #修改nginx配置文件使之支持php
  vim /usr/local/nginx/conf/nginx.conf
  #location ~ \.php$ {
  #    root           html;
  #    fastcgi_pass   127.0.0.1:9000;
  #    fastcgi_index  index.php;
  #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
  #    include        fastcgi_params;
  #}
  修改为
  location ~ \.php$ {
      fastcgi_pass   127.0.0.1:9000;
      fastcgi_index  index.php;
      fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
      include        fastcgi_params;
  }
  
  #也顺便把gzip给开启下吧
  gzip on前面的#去掉
 
  修改完配置之后:nginx -s reload
 
  ok,现在来测试一下环境.
 
  cd /usr/local/nginx
  cd html
  vim test.php
  写上:<?php  phpinfo();?>
 
  然后访问一下localhost/test.php,正常的话,就一切正常了,如果出问题的话,请看nginx有没有启动,php-fpm有没有启动,注明几个问题如果修改php配置文件的时候,需要重启php-fpm就可以了.
 
  #先关闭php-fpm
  
  pkill php-fpm  
  
  #然后运行
  
  /usr/local/php/sbin/php-fpm
  
  #就可以了可以看到php-fpm就启动了pstree可以看到这个进程
  pstree
  为了更方便的使用php和php-fpm,我做了两个链链接.
 
  ln -s /usr/local/php/sbin/php-fpm /usr/bin/
  ln -s /usr/local/php/bin/php /usr/bin/
  lnmp安装就彻底完成了,有什么问题可以联系我,这里没没讲到如何优化一些配置的问题,以后可以会写文章分析.
 
  在这里也特别说明一下nginx如何支持path_info这种形式,配置文件中可以这样写,当然可能对你不需要.
 
  location ~ ^(.+\.php)(.*)$ {
          fastcgi_pass   127.0.0.1:9000;
          fastcgi_index  index.php;
          fastcgi_split_path_info ^(.+\.php)(.*)$;
  
          fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
          fastcgi_param        PATH_INFO                $fastcgi_path_info;
          fastcgi_param        PATH_TRANSLATED        $document_root$fastcgi_path_info;
          include        fastcgi_params;
      }。
 

dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。