源码编译安装LAMP实现动静分离(2)

配置

修改配置文件 [root@localhost httpd-2.4.37]# vim /usr/local/httpd/conf/httpd.conf 171 User apache 172 Group apache 202 ServerName 192.168.111.4:80 #也可填自身域名,并将注释删除 259 <IfModule dir_module> 260 DirectoryIndex index.html index.php 261 </IfModule> #添加PHP的 484 # Virtual hosts 485 Include conf/extra/httpd-vhosts.conf #启用虚拟主机配置 119 LoadModule proxy_module modules/mod_proxy.so 123 LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so #取消注释 [root@localhost httpd-2.4.37]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf #将原来文件内容删除 <VirtualHost 192.168.111.4:80> DocumentRoot "/usr/local/httpd/htdocs" ServerName ErrorLog "/usr/local/httpd/logs/error_log" CustomLog "/usr/local/httpd/logs/access_log" common <Directory "/usr/local/httpd/htdocs"> Options None AllowOverride None Require all granted </Directory> ProxyRequests Off #关闭代理请求 ProxyPassMatch ^/(.*\.php)$ fcgi://192.168.111.5:9000/usr/local/httpd/htdocs/$1 #访问PHP结尾的网页,匹配PHP地址和目录以及端口 </VirtualHost> [root@localhost httpd-2.4.37]# vim /usr/lib/systemd/system/httpd.service #服务启动配置文件 [Unit] #控制单元的定义 Description=The Apache HTTP Server #设置服务单元描述字符串 After=network.target #After:设置服务单元的启动先后顺序。(如,httpd.service单元文件中出现“After=network.target”表示先“network.target”后 “httpd.service“;出现”Before“则 相反顺序启动) [Service] #服务定义 Type=forking #设置服务进程的启动类型。为forking是需同时设置PIDFile配置项,以帮助systemd精确定位到服务的主进程。 PIDFile=/usr/local/httpd/logs/httpd.pid #设置服务的守护进程的PID文件 ExecStart=/usr/local/httpd/bin/apachectl $OPTIONS #设置服务启动时执行的命令 ExecReload=/bin/kill -HUP $MAINPID #设置服务重新加载时执行的命令 KillMode=process #设置在单元停止时,杀死进程的方法;process表示仅杀死主进程。 Restart=on-failure #设置服务进程正常退出、异常退出、被杀死、超时时候,是否重启服务。on-failure表示异常退出重启。 RestartSec=42s #重启服务钱暂停多长时间,默认100ms [install] #安装部分 WantedBy=graphical.target #设置该服务所在的(target)运行目标。WantedBy=graphical.target,是指httpd所在的运行目标是图形界面多用户系统;改配置项还有multi-user.target(非图形界>面多用户系统) [root@localhost httpd-2.4.37]# systemctl start httpd [root@localhost httpd-2.4.37]# systemctl enable httpd  三、安装配置PHP

安装

[root@localhost ~]# yum install -y pcre-devel openssl-devel expat-devel libxml2-devel bzip2-devel #安装依赖包 [root@localhost ~]# tar zxf php-7.3.1.tar.gz -C /usr/src/ [root@localhost php-7.3.1]# cd /usr/src/php-7.3.1/ [root@localhost etc]# ./configure --prefix=/usr/local/php --enable-mysqlnd --with-mysqli=mysqlnd --with-openssl --with-pdo-mysql=mysqlnd --enable-mb string --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir --enable-xml --enable-fpm --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --enable-maintainer-zts --disable-fileinfo && make && make install #编译安装 [root@localhost php-7.3.1]# cp php.ini-production /etc/php.ini #生成配置文件 [root@localhost php-7.3.1]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm #生成服务文件 [root@localhost php-7.3.1]# chmod +x /etc/init.d/php-fpm [root@localhost php-7.3.1]# chkconfig --add php-fpm #添加到服务启动 [root@localhost php-7.3.1]# useradd -r -s /sbin/nologin -M apache #创建运行用户 [root@localhost php-7.3.1]# cd /usr/local/php/etc/ [root@localhost etc]# cp php-fpm.conf.default php-fpm.conf [root@localhost etc]# cp php-fpm.d/www.conf.default php-fpm.d/www.conf #php-fpm配置文件 [root@localhost etc]# vim php-fpm.d/www.conf 23 user = apache 24 group = apache #修改用户和组 36 listen = 192.168.111.5:9000 #监听的地址 [root@localhost etc]# vim php-fpm.conf 17 pid = run/php-fpm.pid #将前面;号去掉(取消注释) [root@localhost etc]# mkdir -pv /usr/local/httpd/htdocs mkdir: 已创建目录 "/usr/local/httpd" mkdir: 已创建目录 "/usr/local/httpd/htdocs" #创建之前在httpd服务器上指定的目录,存放动态网页 [root@localhost ~]# /etc/init.d/php-fpm start Starting php-fpm done #启动php [root@localhost ~]# netstat -lnpt | grep php tcp 0 0 192.168.111.5:9000 0.0.0.0:* LISTEN 54111/php-fpm: mast 四、测试 PHP上新建如下测试文件,测试数据库连通性 [root@localhost etc]# vim /usr/local/httpd/htdocs/mysql.php <?php $link=mysqli_connect('192.168.111.3','root','123456'); #MySQL数据库的主机地址,登录数据库的用户和密码,注意不是系统用户和密码 if($link) echo "<h1>完全分离成功<h1>"; mysqli_close($link); ?>

image

over……

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/e1e33f0c08eff82194ebeb6bc5784ce2.html