- 1、处理PHP动态页面,Apache还是Nginx好?
- 2、CentOS 7 用户怎样安装 LNMP
- 3、lnmp 怎么安装 php
- 4、如何在lnmp上部署Thinkphp
- 5、linux下WebServer 怎么实现PHP动态网页响应!
mapn 这个不错,前端是nginx处理静态文件,后端是apache处理php动态程度。如果不是因为我部署环境太废劲,我会全换成这个的。
LNMP动态网站部署架构是一套由Linux + Nginx + MySQL + PHP组成的动态网站系统解决方案。LNMP中的字母L是Linux系统的意思,不仅可以是RHEL、CentOS、Fedora,还可以是Debian、Ubuntu等系统。在使用源码包安装服务程序之前,首先要让安装主机具备编译程序源码的环境,他需要具备C语言、C++语言、Perl语言的编译器,以及各种常见的编译支持函数库程序。因此请先配置妥当Yum软件仓库,然后把下面列出的这些软件包都统统安装上:
[root@linuxprobe ~]# yum install -y apr* autoconf automake bison bzip2 bzip2* compat* cpp curl curl-devel fontconfig fontconfig-devel freetype freetype* freetype-devel gcc gcc-c++ gd gettext gettext-devel glibc kernel kernel-headers keyutils keyutils-libs-devel krb5-devel libcom_err-devel libpng libpng-devel libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool* libgomp libxml2 libxml2-devel libXpm* libtiff libtiff* make mpfr ncurses* ntp openssl openssl-devel patch pcre-devel perl php-common php-gd policycoreutils telnet t1lib t1lib* nasm nasm* wget zlib-devel
Loaded plugins: langpacks, product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
………………省略部分安装过程………………
Installing:
apr x86_64 1.4.8-3.el7 rhel7 103 k
apr-devel x86_64 1.4.8-3.el7 rhel7 188 k
apr-util x86_64 1.5.2-6.el7 rhel7 92 k
apr-util-devel x86_64 1.5.2-6.el7 rhel7 76 k
autoconf noarch 2.69-11.el7 rhel7 701 k
automake noarch 1.13.4-3.el7 rhel7 679 k
bison x86_64 2.7-4.el7 rhel7 578 k
bzip2-devel x86_64 1.0.6-12.el7 rhel7 218 k
compat-dapl x86_64 1:1.2.19-3.el7 rhel7 109 k
compat-db-headers noarch 4.7.25-27.el7 rhel7 48 k
compat-db47 x86_64 4.7.25-27.el7 rhel7 795 k
compat-gcc-44 x86_64 4.4.7-8.el7 rhel7 10 M
compat-gcc-44-c++ x86_64 4.4.7-8.el7 rhel7 6.3 M
compat-glibc x86_64 1:2.12-4.el7 rhel7 1.2 M
compat-glibc-headers x86_64 1:2.12-4.el7 rhel7 452 k
compat-libcap1 x86_64 1.10-7.el7 rhel7 19 k
compat-libf2c-34 x86_64 3.4.6-32.el7 rhel7 155 k
compat-libgfortran-41 x86_64 4.1.2-44.el7 rhel7 142 k
compat-libtiff3 x86_64 3.9.4-11.el7 rhel7 135 k
compat-openldap x86_64 1:2.3.43-5.el7 rhel7 174 k
cpp x86_64 4.8.2-16.el7 rhel7 5.9 M
fontconfig-devel x86_64 2.10.95-7.el7 rhel7 128 k
freetype-devel x86_64 2.4.11-9.el7 rhel7 355 k
gcc x86_64 4.8.2-16.el7 rhel7 16 M
gcc-c++ x86_64 4.8.2-16.el7 rhel7 7.1 M
………………省略部分安装过程………………
Complete!
[root@linuxprobe ~]# cd /usr/local/src
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src] # wget
[root@linuxprobe src]# ls
zlib-1.2.8.tar.gz libmcrypt-2.5.8.tar.gz pcre-8.35.tar.gz
cmake-2.8.11.2.tar.gz libpng-1.6.12.tar.gz php-5.5.14.tar.gz
Discuz_X3.2_SC_GBK.zip libvpx-v1.3.0.tar.bz2 t1lib-5.1.2.tar.gz
freetype-2.5.3.tar.gz mysql-5.6.19.tar.gz tiff-4.0.3.tar.gz
jpegsrc.v9a.tar.gz nginx-1.6.0.tar.gz yasm-1.2.0.tar.gz
libgd-2.1.0.tar.gz openssl-1.0.1h.tar.gz
CMake是Linux系统中一款常用的编译工具。要想通过源码包安装服务程序,就一定要严格遵守上面总结的安装步骤—下载及解压源码包文件、编译源码包代码、生成二进制安装程序、运行二进制的服务程序安装包。接下来在解压、编译各个软件包源码程序时,都会生成大量的输出信息,下文中将其省略,请读者以实际操作为准。
[root@linuxprobe src]# tar xzvf cmake-2.8.11.2.tar.gz
[root@linuxprobe src]# cd cmake-2.8.11.2/
[root@linuxprobe cmake-2.8.11.2]# ./configure
[root@linuxprobe cmake-2.8.11.2]# make
[root@linuxprobe cmake-2.8.11.2]# make install
20.2.1 配置Mysql服务
[root@linuxprobe cmake-2.8.11.2]# cd ..
[root@linuxprobe src]# useradd mysql -s /sbin/nologin
创建一个用于保存MySQL数据库程序和数据库文件的目录,并把该目录的所有者和所属组身份修改为mysql。其中,/usr/local/mysql是用于保存MySQL数据库服务程序的目录,/usr/local/mysql/var则是用于保存真实数据库文件的目录。
[root@linuxprobe src]# mkdir -p /usr/local/mysql/var
[root@linuxprobe src]# chown -Rf mysql:mysql /usr/local/mysql
接下来解压、编译、安装MySQL数据库服务程序。在编译数据库时使用的是cmake命令,其中,-DCMAKE_INSTALL_PREFIX参数用于定义数据库服务程序的保存目录,-DMYSQL_DATADIR参数用于定义真实数据库文件的目录,-DSYSCONFDIR则是定义MySQL数据库配置文件的保存目录。由于MySQL数据库服务程序比较大,因此编译的过程比较漫长,在此期间可以稍微休息一下。
[root@linuxprobe src]# tar xzvf mysql-5.6.19.tar.gz
[root@linuxprobe src]# cd mysql-5.6.19/
[root@linuxprobe mysql-5.6.19]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/var -DSYSCONFDIR=/etc
[root@linuxprobe mysql-5.6.19]# make
[root@linuxprobe mysql-5.6.19]# make install
[root@linuxprobe mysql-5.6.19]# rm -rf /etc/my.cnf
[root@linuxprobe mysql-5.6.19]# cd /usr/local/mysql
[root@linuxprobe mysql]# ./scripts/mysql_install_db –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/var
把系统新生成的MySQL数据库配置文件链接到/etc目录中,然后把程序目录中的开机程序文件复制到/etc/rc.d/init.d目录中,以便通过service命令来管理MySQL数据库服务程序。记得把数据库脚本文件的权限修改成755以便于让用户有执行该脚本的权限:
[root@linuxprobe mysql]# ln -s my.cnf /etc/my.cnf
[root@linuxprobe mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@linuxprobe mysql]# chmod 755 /etc/rc.d/init.d/mysqld
编辑刚复制的MySQL数据库脚本文件,把第46、47行的basedir与datadir参数分别修改为MySQL数据库程序的保存目录和真实数据库的文件内容。
[root@linuxprobe mysql]# vim /etc/rc.d/init.d/mysqld
………………省略部分输出信息………………
39 #
40 # If you want to affect other MySQL variables, you should make your changes
41 # in the /etc/my.cnf, ~/.my.cnf or other MySQL configuration files.
42
43 # If you change base dir, you must also change datadir. These may get
44 # overwritten by settings in the MySQL configuration files.
45
46 basedir=/usr/local/mysql 47 datadir=/usr/local/mysql/var
48
………………省略部分输出信息………………
[root@Linuxprobe mysql]# service mysqld start
Starting MySQL. SUCCESS!
[root@linuxprobe mysql]# chkconfig mysqld on
[root@linuxprobe mysql]# vim /etc/profile
………………省略部分输出信息………………
64
65 for i in /etc/profile.d/*.sh ; do
66 if [ -r “$i” ]; then
67 if [ “${-#*i}” != “$-” ]; then
68 . “$i”
69 else
70 . “$i” /dev/null
71 fi
72 fi
73 done
74 export PATH=$PATH:/usr/local/mysql/bin
75 unset i
76 unset -f pathmunge
[root@linuxprobe mysql]# source /etc/profile
[root@linuxprobe mysql]# mkdir /var/lib/mysql
受限制,没办法全部搬运,可百度 免费电子书 linux就该这么学,第20章,复制文章中的命令来安装
首先需要安装几个依赖包两个包安装完成后要把动态链接库做一个软连接到/usr/lib,以为接下来的mcrypt依赖于这两个包安装php下载php安装依赖编译,就这么简单我是有空就在后盾人看视频加上自己的理解的,也不知道对不对,希望能帮到你
有两种方法 一种是在服务器上用composer安装 还有就是去官网把源码下下来 ftp上传服务器就行了
你直接去自己读 http 服务器的接口相关代码吧。
推荐个小型的 http 服务器程序
不过现在 cgi 方式是通用的,apache 的 so 方式调用貌似需要 php 这边代码的支持,也就是 apache 有 so 代码接口,php 根据这个接口做的扩展式模块。
这种方式也就两种办法,要么你的 httpd 服务器自己实现 apache 的模块接口函数,要么就去改写 php 的代码,给自己的 httpd 制作一个对应的模块功能。
当然还一个办法,那就是干脆集成 php 到你的服务器代码里。不过注意你的程序协议。php 虽然不是 gpl 的,用的是他自己的 PHP lic ,类似 BSD 但貌似不是 copyleft 。
原创文章,作者:A146B,如若转载,请注明出处:https://www.506064.com/n/126586.html