Nginx安装笔记(一)

我在本机安装Nginx时是采用的http://blog.licess.cn/lnmp/提供的一键安装包,这个虽然装起来很方便,但是里面的很多的配置,我都没有亲自去做,这样装了一遍下来,我对Nginx的安装还是不是非常的清楚。我通过查看它的安装脚本,以及网上的资料,整理了一套安装nginx的步骤。以下的内容主要根据我自己使用的实际情况来写的,有的是参考网上的内容来写成的。如您对此文有任何的问题或意见,可以留言给我,希望我们可以互相交流,共同进步!

<wbr></wbr>

一、软件下载:
<wbr><wbr><wbr> 1、官网下载</wbr></wbr></wbr>

cd /usr/src
wget http://sysoev.ru/nginx/nginx-0.8.15.tar.gz
wget http://www.php.net/get/php-5.2.10.tar.gz/from/this/mirror
wget http://blog.s135.com/soft/linux/nginx_php/phpfpm/php-5.2.10-fpm-0.5.11.diff.gz
wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.38.tar.gz/from/http://mysql.he.net/
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.tar.gz
wget "http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz?modtime=1171868460&big_mirror=0"
wget "http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz?modtime=1194463373&big_mirror=0"
wget http://pecl.php.net/get/memcache-2.2.5.tgz
wget "http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz?modtime=1175740843&big_mirror=0"
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.9.tar.gz
wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2
wget http://pecl.php.net/get/PDO_MYSQL-1.0.2.tgz
wget http://blog.s135.com/soft/linux/nginx_php/imagick/ImageMagick.tar.gz
wget http://pecl.php.net/get/imagick-2.2.2.tgz
以下为安装过程中可能需要的安装包
yum -y update
yum -y install patch make gcc gcc-c++ gcc-g77 flex bison
yum -y install libtool libtool-libs autoconf kernel-devel
yum -y install libjpeg libjpeg-devel libpng libpng-devel
yum -y install freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel
yum -y install glib2 glib2-devel bzip2
yum -y install bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs
yum -y install e2fsprogs-devel krb5 krb5-devel libidn libidn-devel
yum -y install openssl openssl-devel vim-minimal sendmail
yum -y install fonts-chinese scim-chewing scim-pinyin scim-tables-chinese

  2、从 blog.s135.com下载(比较稳定,只允许在本站,或者在Linux/Unix下通过Wget、Curl等命令下载以下软件):
cd /usr/src
wget http://blog.s135.com/soft/linux/nginx_php/nginx/nginx-0.8.15.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/php/php-5.2.10.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/phpfpm/php-5.2.10-fpm-0.5.11.diff.gz
wget http://blog.s135.com/soft/linux/nginx_php/mysql/mysql-5.1.38.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/libiconv/libiconv-1.13.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/mcrypt/libmcrypt-2.5.8.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/mcrypt/mcrypt-2.6.8.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/memcache/memcache-2.2.5.tgz
wget http://blog.s135.com/soft/linux/nginx_php/mhash/mhash-0.9.9.9.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/pcre/pcre-7.9.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/eaccelerator/eaccelerator-0.9.5.3.tar.bz2
wget http://blog.s135.com/soft/linux/nginx_php/pdo/PDO_MYSQL-1.0.2.tgz
wget http://blog.s135.com/soft/linux/nginx_php/imagick/ImageMagick.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/imagick/imagick-2.2.2.tgz

二、安装PHP 5.2.10(FastCGI模式)
  1、编译安装PHP 5.2.10所需的支持库:
tar -zxvf libiconv-1.13.tar.gz
cd libiconv-1.13/
./configure --prefix=/usr/local
make
make install
cd ../

tar -zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure
make
make install
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make
make install
cd ../../

tar -zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make
make install
cd ../

ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la
ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so
ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4
ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8
ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a
ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la
ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so
ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2
ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1

tar -zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
/sbin/ldconfig
./configure
make
make install
cd ../

  2、编译安装MySQL 5.1.38
tar -zxvf mysql-5.1.35.tar.gz
cd mysql-5.1.35
./configure --prefix=/usr/local/mysql --enable-assembler --with-charset=utf8 --enable-thread-safe-client --with-extra-charsets=all --without-isam
make;make install
cd ../
groupadd mysql
useradd -g mysql mysql
cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
/usr/local/mysql/bin/mysql_install_db --user=mysql
chown -R mysql /usr/local/mysql/var
chgrp -R mysql /usr/local/mysql/.
cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysql
chmod 755 /etc/init.d/mysql
chkconfig --level 345 mysql on
echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf
echo "/usr/local/lib" >>/etc/ld.so.conf
ldconfig
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
ln -s /usr/local/mysql/include/mysql /usr/include/mysql
service mysql start
/usr/local/mysql/bin/mysqladmin -u root password 123
service mysql restart
service mysql stop



  附:以下为附加步骤,如果你想在这台服务器上运行MySQL数据库,则执行以下两步。如果你只是希望让PHP支持MySQL扩展库,能够连接其他服务器上的MySQL数据库,那么,以下无需执行。

  ①、创建MySQL数据库存放目录
mkdir -p /data0/mysql/3306/data/
chown -R mysql:mysql /data0/mysql/

  ②、以mysql用户帐号的身份建立数据表:
/usr/local/mysql/bin/mysql_install_db --basedir=/usr/local/mysql --datadir=/data0/mysql/3306/data --user=mysql

  ③、创建my.cnf配置文件:
vi /data0/mysql/3306/my.cnf


  输入以下内容:<wbr></wbr>

[client]
default-character-set = utf8
port<wbr><wbr><wbr><wbr>= 3306<br> socket<wbr><wbr>= /tmp/mysql.sock<br><br> [mysql]<br> prompt="(\u:blog.s135.com:)[\d]&gt; "<br> no-auto-rehash<br><br> [mysqld]<br> #default-character-set = utf8<br> user<wbr><wbr><wbr><wbr>= mysql<br> port<wbr><wbr><wbr><wbr>= 3306<br> socket<wbr><wbr>= /tmp/mysql.sock<br> basedir = /usr/local/mysql<br> datadir = /data0/mysql/3306/data<br> open_files_limit<wbr><wbr><wbr><wbr>= 10240<br> back_log = 600<br> max_connections = 3000<br> max_connect_errors = 6000<br> table_cache = 614<br> external-locking = FALSE<br> max_allowed_packet = 32M<br> sort_buffer_size = 2M<br> join_buffer_size = 2M<br> thread_cache_size = 300<br> thread_concurrency = 8<br> query_cache_size = 32M<br> query_cache_limit = 2M<br> query_cache_min_res_unit = 2k<br> default-storage-engine = MyISAM<br> default_table_type = MyISAM<br> thread_stack = 192K<br> transaction_isolation = READ-COMMITTED<br> tmp_table_size = 246M<br> max_heap_table_size = 246M<br> long_query_time = 1<br> log_long_format<br> log-bin = /data0/mysql/3306/binlog<br> binlog_cache_size = 4M<br> binlog_format = MIXED<br> max_binlog_cache_size = 8M<br> max_binlog_size = 512M<br> expire_logs_days = 7<br> key_buffer_size = 256M<br> read_buffer_size = 1M<br> read_rnd_buffer_size = 16M<br> bulk_insert_buffer_size = 64M<br> myisam_sort_buffer_size = 128M<br> myisam_max_sort_file_size = 10G<br> myisam_max_extra_sort_file_size = 10G<br> myisam_repair_threads = 1<br> myisam_recover<br><br> skip-name-resolve<br> master-connect-retry = 10<br> slave-skip-errors = 1032,1062,126,1114,1146,1048,1396<br><br> server-id = 1<br><br> innodb_additional_mem_pool_size = 16M<br> innodb_buffer_pool_size = 2048M<br> innodb_data_file_path = ibdata1:1024M:autoextend<br> innodb_file_io_threads = 4<br> innodb_thread_concurrency = 8<br> innodb_flush_log_at_trx_commit = 2<br> innodb_log_buffer_size = 16M<br> innodb_log_file_size = 128M<br> innodb_log_files_in_group = 3<br> innodb_max_dirty_pages_pct = 90<br> innodb_lock_wait_timeout = 120<br> innodb_file_per_table = 0<br> [mysqldump]<br> quick<br> max_allowed_packet = 32M</wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>


  ④、创建管理MySQL数据库的shell脚本:

vi /data0/mysql/3306/mysql


  输入以下内容(这里的用户名root和密码123接下来的步骤会创建):<wbr></wbr>

  1. #!/bin/sh <wbr><wbr></wbr></wbr>
  2. <wbr><wbr></wbr></wbr>
  3. mysql_port=3306 <wbr><wbr></wbr></wbr>
  4. mysql_username="root"<wbr><wbr></wbr></wbr>
  5. mysql_password="123"<wbr><wbr></wbr></wbr>
  6. <wbr><wbr></wbr></wbr>
  7. function_start_mysql() <wbr><wbr></wbr></wbr>
  8. { <wbr><wbr></wbr></wbr>
  9. <wbr><wbr><wbr><wbr>printf<wbr></wbr></wbr></wbr></wbr></wbr>"Starting<wbr>MySQL...\n"</wbr><wbr><wbr></wbr></wbr>
  10. <wbr><wbr><wbr><wbr>/bin/sh<wbr>/usr/local/mysql/bin/mysqld_safe<wbr>--defaults-file=/data0/mysql/${mysql_port}/my.cnf<wbr>2&gt;&amp;1<wbr>&gt;<wbr>/dev/null<wbr>&amp; <wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
  11. } <wbr><wbr></wbr></wbr>
  12. <wbr><wbr></wbr></wbr>
  13. function_stop_mysql() <wbr><wbr></wbr></wbr>
  14. { <wbr><wbr></wbr></wbr>
  15. <wbr><wbr><wbr><wbr>printf<wbr></wbr></wbr></wbr></wbr></wbr>"Stoping<wbr>MySQL...\n"</wbr><wbr><wbr></wbr></wbr>
  16. <wbr><wbr><wbr><wbr>/usr/local/mysql/bin/mysqladmin<wbr>-u<wbr>${mysql_username}<wbr>-p${mysql_password}<wbr>-S<wbr>/tmp/mysql.sock<wbr>shutdown <wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
  17. } <wbr><wbr></wbr></wbr>
  18. <wbr><wbr></wbr></wbr>
  19. function_restart_mysql() <wbr><wbr></wbr></wbr>
  20. { <wbr><wbr></wbr></wbr>
  21. <wbr><wbr><wbr><wbr>printf<wbr></wbr></wbr></wbr></wbr></wbr>"Restarting<wbr>MySQL...\n"</wbr><wbr><wbr></wbr></wbr>
  22. <wbr><wbr><wbr><wbr>function_stop_mysql <wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr>
  23. <wbr><wbr><wbr><wbr>sleep<wbr>5 <wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
  24. <wbr><wbr><wbr><wbr>function_start_mysql <wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr>
  25. } <wbr><wbr></wbr></wbr>
  26. <wbr><wbr></wbr></wbr>
  27. function_kill_mysql() <wbr><wbr></wbr></wbr>
  28. { <wbr><wbr></wbr></wbr>
  29. <wbr><wbr><wbr><wbr>kill<wbr>-9<wbr>$(ps<wbr>-ef<wbr>|<wbr>grep<wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>'bin/mysqld_safe'<wbr>|<wbr>grep<wbr>${mysql_port}<wbr>|<wbr>awk<wbr></wbr></wbr></wbr></wbr></wbr></wbr>'{printf<wbr>$2}'</wbr>) <wbr><wbr></wbr></wbr>
  30. <wbr><wbr><wbr><wbr>kill<wbr>-9<wbr>$(ps<wbr>-ef<wbr>|<wbr>grep<wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>'libexec/mysqld'<wbr>|<wbr>grep<wbr>${mysql_port}<wbr>|<wbr>awk<wbr></wbr></wbr></wbr></wbr></wbr></wbr>'{printf<wbr>$2}'</wbr>) <wbr><wbr></wbr></wbr>
  31. } <wbr><wbr></wbr></wbr>
  32. <wbr><wbr></wbr></wbr>
  33. if<wbr>[<wbr></wbr></wbr>"$1"<wbr>=<wbr></wbr></wbr>"start"<wbr>];<wbr>then <wbr><wbr></wbr></wbr></wbr></wbr>
  34. <wbr><wbr><wbr><wbr>function_start_mysql <wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr>
  35. elif<wbr>[<wbr></wbr></wbr>"$1"<wbr>=<wbr></wbr></wbr>"stop"<wbr>];<wbr>then <wbr><wbr></wbr></wbr></wbr></wbr>
  36. <wbr><wbr><wbr><wbr>function_stop_mysql <wbr><wbr></wbr></wbr></wbr></wbr></wbr></wbr>
  37. elif<wbr>[<wbr></wbr></wbr>"$1"<wbr>=<wbr></wbr></wbr>"restart"<wbr>];<wbr>then <wbr><wbr></wbr></wbr></wbr></wbr>
  38. function_restart_mysql <wbr><wbr></wbr></wbr>
  39. elif<wbr>[<wbr></wbr></wbr>"$1"<wbr>=<wbr></wbr></wbr>"kill"<wbr>];<wbr>then <wbr><wbr></wbr></wbr></wbr></wbr>
  40. function_kill_mysql <wbr><wbr></wbr></wbr>
  41. else<wbr><wbr></wbr></wbr>
  42. <wbr><wbr><wbr><wbr>printf<wbr></wbr></wbr></wbr></wbr></wbr>"Usage:<wbr>/data0/mysql/${mysql_port}/mysql<wbr>{start|stop|restart|kill}\n"</wbr></wbr><wbr><wbr></wbr></wbr>
  43. fi<wbr><wbr></wbr></wbr>

<wbr></wbr>

  ⑤、赋予shell脚本可执行权限:

chmod +x /data0/mysql/3306/mysql

  ⑥、启动MySQL:
/data0/mysql/3306/mysql start

  ⑦、通过命令行登录管理MySQL服务器(提示输入密码时直接回车):
/usr/local/mysql/bin/mysql -u root -p -S /tmp/mysql.sock

  ⑧、输入以下SQL语句,创建一个具有root权限的用户(admin)和密码(12345678):
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY '123';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' IDENTIFIED BY '123';

  ⑨、(可选)停止MySQL:
/data0/mysql/3306/mysql stop

<wbr></wbr>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值