2312132145 发表于 2016-8-16 09:13:40

lnmp部署以及相关应用

lnmp实现多个虚拟主机,部署wordpress和phpmyadmin,并为后一个主机提供https;

(1)yum安装部署
安装nginx# vim nginx.reponame=nginx repobaseurl=http://nginx.org/packages/centos/7/$basearch/gpgcheck=0enabled=1# yum install -y nginx安装php# yum install php-fpm -y# vim /etc/php-fpm.d/www.conflisten = 127.0.0.1:9000   user = nginxgroup = nginx
配置nginx对接php,把nginx 通过fastcgi作为fastcgi的客户端,将php网页反向代理给fastcgi服务端# vim /etc/nginx/nginx.confworker_processes3;gzipon;include /etc/nginx/conf.d/*.conf;# vim /etc/nginx/conf.d/default.confindexindex.phpindex.html index.htm;root   /data/wwwlocation ~ \.php$ {      root         /data/www;       fastcgi_pass   127.0.0.1:9000;       fastcgi_indexindex.php;       fastcgi_param SCRIPT_FILENAME /data/www/$fastcgi_script_name;      include      fastcgi_params;     }# mkdir -p /data/www# nginx -t# nginx# systemctl start php-fpm.service测试nginx和php的连接# vim /data/www/index.php<?php      phpinfo();?>
安装mariadb和php与maridb之间的驱动# yuminstall mariadb-server php-mysql -y# systemctl start mariadbMariaDB [(none)]> grant all on *.* to zou@'localhost'identified by '123.comer';MariaDB [(none)]> create database wordpress;MariaDB [(none)]> grant all on wordpress.* to'wpuser'@'localhost' identified by 'wppasswd';MariaDB [(none)]> flush privileges;# vim /data/www/index.php<?php$conn=mysql_connect('localhost','zou','123.comer');   if($conn)echo "web is ok";   elseecho fault;   mysql_close();   phpinfo();?># systemctl reload php-fpm
# yum install httpd-tools -y# ab -c100 -n 1000 http://172.16.1.1/index.php      (在没有缓存的情况下是1450)
准备搭建wordpress了把wordpress下载下来,并解压缩到/data/www目录下面# pwd/data/www/wordpress# cp wp-config-sample.php wp-config.php# vim wp-config.phpdefine('DB_NAME', 'wordpress');define('DB_USER', 'wpuser');define('DB_PASSWORD', 'wppasswd');define('DB_HOST', 'localhost');在浏览器键入:http://172.16.1.1/wordpress/
之后输入已经设定好的网页版的管理者zou和密码
准备设置phpmyadmin# pwd/data/www/phpmyadmin# vim libraries/config.default.php$cfg['Servers'][$i]['host'] = 'localhost';$cfg['Servers'][$i]['user'] = 'zou';$cfg['Servers'][$i]['password'] = '123.comer';# yum install php-mbstring# systemctl reload php-fpm# nginx -s reload在浏览器输入http://172.16.1.1/phpmyadmin
有错,php.ini的session问题# vim /etc/php.inisession.use_cookies = 1session.save_path = "/tmp"在phpmyadmin中找到,config.sample.inc.php,改成config.inc.php,找到$cfg['blowfish_secret'] 将后面的赋值,加入数字和字母组合(最好位数在16位左右)# mkdir /var/lib/php/session# chmod 777 /var/lib/php/session/# nginx -s reload# systemctl reload php-fpm
(2)编译安装LNMP# yum groupinstall "Development Tools""Server Platform Development" -ygzip模块需要zlib库,rewrite模块需要pcre库,ssl功能需要openssl,所以要安装# yum install pcre-develzlib-devel openssl-devel-y# useradd -r nginx# tar zxvf nginx-1.10.1.tar.gz# cd nginx-1.10.1/# ./configure --prefix=/usr/local/nginx--sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf--error-log-path=/var/log/nginx/error.log--http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid--lock-path=/var/run/nginx.lock --user=nginx --group=nginx--with-http_ssl_module --with-http_v2_module --with-http_dav_module--with-http_stub_status_module --with-threads--with-file-aio# make -j 4#make install# nginx -t   检查语法# nginx -s {stop|start|reopen|reload}进程的管理
mariadb客户端编译安装服务(这里实际上并算不上是编译安装,mariadb压缩包解压完之后就可以安装,二进制格式安装)# tar xf mariadb-5.5.46-linux-x86_64.tar.gz# mvmariadb-5.5.46-linux-x86_64 /usr/local/mysql# useradd -r mysql# cd /usr/local/mysql/# chown -R root:mysql ./*# ll# mkdir -p /data/mariadb# scripts/mysql_install_db --user=mysql --datadir=/data/mariadb # cp support-files/mysql.server /etc/init.d/mysqld# support-files/my-large.cnf/etc/my.cnf#vim /etc/my.cnf添加三个选项:datadir = /data/mariadbinnodb_file_per_table = ONskip_name_resolve = ON# /etc/init.d/mysqld startStarting MySQL.. SUCCESS!# ss -ntlp    查看3306端口#/usr/local/mysql/bin/mysql可以登录即可MariaDB [(none)]> grant all on *.* to 'zou'@'%' identifiedby '123.comer';MariaDB [(none)]> flush privileges;
编译安装php# yum install mariadb mariadb-devel# yum install libxml2-devel gd-develfreetype-devel libmcrypt-devel# mkdir /usr/lib/mysql#cp -r /usr/lib64/mysql/*/usr/lib/mysql/
# ./configure --prefix=/usr/local/php54--with-mysql=/usr --with-openssl --with-mysqli=/usr/bin/mysql_config--enable-mbstring --enable-xml --enable-sockets --with-freetype-dir --with-gd--with-libxml-dir=/usr --with-zlib --with-jpeg-dir --with-png-dir --with-mcrypt--enable-fpm --with-config-file-path=/etc/php54/php.ini--with-config-file-scan-dir=/etc/php54/php.d
# make -j 2# make install# cd /usr/local/php54# cp etc/php-fpm.conf.default etc/php-fpm.conf# vim etc/php-fpm.conflisten = 127.0.0.1:9000    (如果对外响应也可以写上主机的ip加上9000端口)user = nginxgroup = nginx# sbin/php-fpm   启动服务 (如果关闭就用pkill php-fpm)# ss -ntlp   查看监听的服务
# vim /etc/nginx/nginx.conflocation / {            root   /data/www;            indexindex.php index.html index.htm;      }location ~ \.php$ {            root         /data/www;            fastcgi_pass   127.0.0.1:9000;如果php服务端不在本地,那就要写php的ip和端口了         fastcgi_indexindex.php;         fastcgi_param SCRIPT_FILENAME /data/www/$fastcgi_script_name;         include      fastcgi_params;      }# mkdir -p /data/www# vim /data/www/index.php# iptables -F# setenforce 0# nginx -s reload


页: [1]
查看完整版本: lnmp部署以及相关应用