随笔-179  评论-666  文章-29  trackbacks-0
  2019年8月13日
一、准备 正式开始前,编译环境gcc、g 等开发库需要提前安装。
nginx依赖以下模块: gzip模块需要 zlib 库 rewrite模块需要 pcre 库 ssl 功能需要openssl库
源码目录为:/usr/local/src
1、安装make yum -y install gcc automake autoconf libtool make
2、安装g yum install gcc gcc-c
3、安装pcre库 cd /usr/local/src wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.42.tar.gz tar -zxvf pcre-8.42.tar.gz cd pcre-8.42/ ./configure make && make install 出现如下报错: make[2]: *** [install-libltlibraries] error 1 make[2]: leaving directory `/usr/local/src/pcre-8.42' make[1]: *** [install-am] error 2 make[1]: leaving directory `/usr/local/src/pcre-8.42' make: *** [install] error 2 权限不够,切换到root,重新make install即可。
4、安装zlib库 cd /usr/local/src wget http://zlib.net/zlib-1.2.11.tar.gz tar -zxvf zlib-1.2.11.tar.gz cd zlib-1.2.11/ ./configure make && make install
5、安装openssl库 cd /usr/local/src wget http://www.openssl.org/source/openssl-1.1.0h.tar.gz tar -zxvf openssl-fips-2.0.16.tar.gz cd openssl-fips-2.0.16/ ./config make && make install 编译安装 openssl 1.1.1 支持国密标准 https://blog.51cto.com/1012682/2380553 6、创建用户及用户组 一般为了服务器安全,会指定一个普通用户权限的账号做为nginx的运行角色,这里使用www用户做为nginx工作进程的用户。后续安装的php也以www用户作为工作进程用户。 groupadd -r www useradd -r -g www www 二、nginx 1、下载 cd /usr/local/src wget http://nginx.org/download/nginx-1.14.0.tar.gz tar –zxvf nginx-1.14.0.tar.gz cd nginx-1.14.0 2、配置 ./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=www --group=www --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --with-http_flv_module --with-http_mp4_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi make && make install nginx编译选项说明: --prefix表示nginx要安装到哪个路径下,这里指定刚才新建好的/alidata/server目录下的nginx-1.12.2; --sbin-path表示nginx的可执行文件存放路径 --conf-path表示nginx的主配置文件存放路径,nginx允许使用不同的配置文件启动,通过命令行中的-c选项 --pid-path表示nginx.pid文件的存放路径,将存储的主进程的进程号。安装完成后,可以随时改变的文件名 , 在nginx.conf配置文件中使用 pid指令。默认情况下,文件名 为prefix/logs/nginx.pid --error-log-path表示nginx的主错误、警告、和诊断文件存放路径 --http-log-path表示nginx的主请求的http服务器的日志文件的存放路径 --user表示nginx工作进程的用户 --group表示nginx工作进程的用户组 --with-select_module或--without-select_module表示启用或禁用构建一个模块来允许服务器使用select()方法 --with-poll_module或--without-poll_module表示启用或禁用构建一个模块来允许服务器使用poll()方法 --with-http_ssl_module表示使用https协议模块。默认情况下,该模块没有被构建。建立并运行此模块的openssl库是必需的 --with-pcre表示pcre的源码路径,因为解压后的pcre是放在root目录下的,所以是/root/pcre-8.41; --with-zlib表示zlib的源码路径,这里因为解压后的zlib是放在root目录下的,所以是/root/zlib-1.2.11 --with-openssl表示openssl库的源码路径 配置ok: configuration summary using pcre library: /usr/local/src/pcre-8.42 using openssl library: /usr/local/src/openssl-1.1.0h using zlib library: /usr/local/src/zlib-1.2.11 nginx path prefix: "/usr/local/nginx" nginx binary file: "/usr/local/nginx/sbin/nginx" nginx modules path: "/usr/local/nginx/modules" nginx configuration prefix: "/usr/local/nginx" nginx configuration file: "/usr/local/nginx/nginx.conf" nginx pid file: "/usr/local/nginx/nginx.pid" nginx error log file: "/usr/local/nginx/logs/error.log" nginx http access log file: "/usr/local/nginx/logs/access.log" nginx http client request body temporary files: "/var/tmp/nginx/client/" nginx http proxy temporary files: "/var/tmp/nginx/proxy/" nginx http fastcgi temporary files: "/var/tmp/nginx/fcgi/" nginx http uwsgi temporary files: "/var/tmp/nginx/uwsgi" nginx http scgi temporary files: "/var/tmp/nginx/scgi" 3、安装 make && make install 4、启动 /usr/local/nginx/sbin/nginx 启动时报错: nginx: [emerg] mkdir() "/var/tmp/nginx/client/" failed (2: no such file or directory) 手动创建该目录即可:mkdir -p /var/tmp/nginx/client 再次启动,打开浏览器访问此机器的ip,浏览器出现welcome to nginx! 则表示 nginx 已经安装并运行成功。
5、设置软连接 ln -sf /usr/local/nginx/sbin/nginx /usr/sbin 这样就可以直接执行nginx来启动了。
6、检测nginx nginx -t 显示: nginx: the configuration file /usr/local/nginx/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/nginx.conf test is successful 三、php 1、安装php需要的常用库 yum -y install libmcrypt-devel mhash-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel 2、下载 cd /usr/local/src wget http://cn2.php.net/downloads.php/php-7.2.5.tar.gz tar -zxvf php-7.2.5.tar.gz 3、配置 ./configure --prefix=/usr/local/php \ --with-mysql=mysqlnd \ --enable-mysqlnd \ --with-gd \ --enable-gd-jis-conv \ --enable-fpm 4、安装 make && make install 安装信息如下: installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20170718/ installing php cli binary: /usr/local/php/bin/ installing php cli man page: /usr/local/php/php/man/man1/ installing php fpm binary: /usr/local/php/sbin/ installing php fpm defconfig: /usr/local/php/etc/ installing php fpm man page: /usr/local/php/php/man/man8/ installing php fpm status page: /usr/local/php/php/php/fpm/ installing phpdbg binary: /usr/local/php/bin/ installing phpdbg man page: /usr/local/php/php/man/man1/ installing php cgi binary: /usr/local/php/bin/ installing php cgi man page: /usr/local/php/php/man/man1/ installing build environment: /usr/local/php/lib/php/build/ installing header files: /usr/local/php/include/php/ installing helper programs: /usr/local/php/bin/ program: phpize program: php-config installing man pages: /usr/local/php/php/man/man1/ page: phpize.1 page: php-config.1 installing pear environment: /usr/local/php/lib/php/ [pear] archive_tar: upgrade to a newer version (1.4.3 is not newer than 1.4.3) [pear] console_getopt: upgrade to a newer version (1.4.1 is not newer than 1.4.1) [pear] structures_graph: upgrade to a newer version (1.1.1 is not newer than 1.1.1) [pear] xml_util: upgrade to a newer version (1.4.2 is not newer than 1.4.2) [pear] pear: upgrade to a newer version (1.10.5 is not newer than 1.10.5) /usr/local/src/php-7.2.5/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin ln -s -f phar.phar /usr/local/php/bin/phar installing pdo headers: /usr/local/php/include/php/ext/pdo/ 5、添加环境变量 vim /etc/profile 在末尾加入 export php_home=/usr/local/php export path=/bin:/usr/bin:/usr/sbin:/sbin:$path:php_home/bin:$php_home/sbin 保存修改后,使用source命令重新加载配置文件: source /etc/profile 查看环境变量: echo $path 6、配置php-fpm cd /usr/local/php/etc cp php-fpm.conf.default php-fpm.conf cd php-fpm.d/ cp www.conf.default www.conf 使用vim命令对php-fpm.conf的内容进行如下修改: pid = /usr/local/php/var/run/php-fpm.pid 使用vim命令对php-fpm.conf的内容进行如下修改: user = www group = www 其他配置可根据需求进行修改,比如pm.max_children(php-fpm 能启动的子进程的最大数量)、pm.start_servers(php启动时,开启的子进程的数量)、pm.min_spare_servers(动态方式空闲状态下的最小php-fpm进程数量)、pm.max_spare_servers(动态方式空闲状态下的最大php-fpm进程数量)等。 7、启动php-fpm /usr/local/php/sbin/php-fpm 可以通过ps aux | grep php查看php进程。 https://www.cnblogs.com/sunshineliulu/p/8991957.html 三、mysql https://blog.csdn.net/weixin_33859844/article/details/90948191 https://www.cnblogs.com/yangchunlong/p/8477743.html
posted @ 2019-08-13 17:37 alpha 阅读(262) | 评论 (0)编辑 收藏
网站地图