原文:https://blog.csdn.net/lvshaorong/article/details/79401860

https://blog.csdn.net/lvshaorong/article/details/79401860

http://www.perzl.org/aix/index.php?n=Main.Nginx

NGINX近两年的使用范围非常广泛,既可以作为HTTP负载均衡器,还可以作为PHP服务器,还能做HTTPS服务器,用途非常广泛,体积非常小巧,性能很高。很多Linux的Web服务器都部署了nginx。

但是如果使用了IBM的Power服务器,AIX系统,WebSphere中间件等IBM全家桶,很多linux用的很顺手的东西,到了AIX上都很难安装和部署。

虽然IBM对于这种软负载均衡器有自己的产品,比如IBM HTTP Server,但是使用起来仍然很复杂,不如nginx配置简单方便,而且最关键的是,IBM的产品都是要收费的,所以开源产品在AIX上仍然有它存在的意义。

如果在一台精简安装的AIX系统上装nginx需要安装大量的依赖包,由于AIX上没有像linux上有专门的yum管理工具,所以所有的依赖都要自己手动解决,虽然比较麻烦,但是能够自己手动控制依赖的版本。

如果只安装nginx,那么所有的依赖都选择最新的版本就好,但是其他的工具,比如WebSphere的概要文件管理器(/IBM/WebSphere/AppServer/bin/ProfileManagement/pmt.sh),可以使用图形界面,配置文件和命令行三种方式创建概要文件,但是最好用的还是图形界面,然而图形界面使用的eclipse爱用的awt,所以需要AIX系统安装了gtk2,而且还不能安装最新版的gtk,必须使用十年前很旧很旧的版本,而这样新旧版本就会和nginx的依赖发生冲突,所以要格外注意各个依赖包版本的选择,并以概要文件管理器为准。

安装nginx有两种方式:

1、安装预编译好的rpm包,无法自定义模块

2、自己编译nginx源码,并可以定制nginx的模块

下面先介绍安装rpm包,nginx最新版的rpm包可以去http://www.perzl.org/aix/index.php?n=Main.Nginx  下载,而且它所需的各个依赖包也可以在ftp://www.oss4aix.org/everything/RPMS/ 下载

对于AIX 7.1.0.0所需的nginx和所有合适版本的依赖包我都已经下载好,大家可以到下面这个连接直接下载压缩包,免去手动查找依赖选择版本的痛苦

http://download.csdn.net/download/lvshaorong/10264129

大概的依赖关系如下图所示,在安装的的时候还要注意版本,不要一位只选择最高版本,防止其他服务不兼容

按照上图所示的依赖关系安装相关的依赖包,最后安装nginx就可以实现,如下面这台机器是一台精简安装的AIX 7.1.0.0,预装软件只有下面几个

bash-4.3# oslevel
7.1.0.0
bash-4.3# rpm -qa
bash-4.3.30-1
tcl-8.4.7-3
tk-8.4.7-3
expect-5.42.1-3
AIX-rpm-7.1.2.15-2
然后是我提供的压缩包里的rpm包,解压后放到服务器上,如下

bash-4.3# ls
GeoIP-1.5.1-1.aix5.1.ppc.rpm
bzip2-1.0.6-1.aix5.1.ppc.rpm
expat-2.0.1-1.aix5.2.ppc.rpm
fontconfig-2.5.0-1.aix5.1.ppc.rpm
freetype2-2.3.9-1.aix5.2.ppc.rpm
gd-2.0.35-5.aix5.1.ppc.rpm
gettext-0.10.40-6.aix5.1.ppc.rpm
glib2-2.38.2-1.aix5.1.ppc.rpm
info-6.4-1.aix5.1.ppc.rpm
libXpm-3.5.12-1.aix6.1.ppc.rpm
libgcc-6.3.0-1.aix7.1.ppc.rpm
libgcrypt-1.8.2-1.aix5.2.ppc.rpm
libgpg-error-1.27-1.aix5.1.ppc.rpm
libiconv-1.15-1.aix5.1.ppc.rpm
libjpeg-6b-6.aix5.1.ppc.rpm
libpng-1.2.32-2.aix5.2.ppc.rpm
libxml2-2.9.7-1.aix5.1.ppc.rpm
libxslt-1.1.32-1.aix5.1.ppc.rpm
nginx-1.12.2-1.aix5.3.ppc.rpm
openssl-1.0.2l-1.aix5.1.ppc.rpm
pcre-8.41-1.aix5.1.ppc.rpm
pkg-config-0.25-1.aix5.1.ppc.rpm
readline-7.0-3.aix5.1.ppc.rpm
xorg-compat-aix-1.2-1.aix5.1.ppc.rpm
xz-libs-5.2.3-1.aix6.1.ppc.rpm
zlib-1.2.3-7.aix5.1.ppc.rpm
如果不是精简安装,那么有些包可能已经安装过了,就无需再次安装,除非遇到了版本太高或者太低不兼容的问题。比如目前AIX 官网给出的openssl就要比nginx要求的openssl版本要低。,所以需要用这个openssl直接覆盖掉以前安装的openssl。

我的完整安装过程日志如下,可以作为参考

bash-4.3# rpm -ivh ./zlib-1.2.3-7.aix5.1.ppc.rpm
zlib ##################################################
bash-4.3# rpm -ivh ./GeoIP-1.5.1-1.aix5.1.ppc.rpm
GeoIP ##################################################
bash-4.3# rpm -ivh ./libgc
libgcc-6.3.0-1.aix7.1.ppc.rpm libgcrypt-1.8.2-1.aix5.2.ppc.rpm
bash-4.3# rpm -ivh ./libgcc-6.3.0-1.aix7.1.ppc.rpm
libgcc ##################################################
bash-4.3# rpm -ivh ./gd-2.0.35-5.aix5.1.ppc.rpm
error: failed dependencies:
freetype2 >= 2.3.5 is needed by gd-2.0.35-5
fontconfig >= 2.5.0 is needed by gd-2.0.35-5
libjpeg is needed by gd-2.0.35-5
libpng is needed by gd-2.0.35-5
libXpm >= 3.5.7 is needed by gd-2.0.35-5
libXpm.a(libXpm.so.4) is needed by gd-2.0.35-5
libfontconfig.a(libfontconfig.so.1) is needed by gd-2.0.35-5
libfreetype.a(libfreetype.so.6) is needed by gd-2.0.35-5
libjpeg.a(libjpeg.so.62) is needed by gd-2.0.35-5
libpng12.a(libpng12.so.0) is needed by gd-2.0.35-5
bash-4.3# rpm -ivh ./fontconfig-2.5.0-1.aix5.1.ppc.rpm
error: failed dependencies:
freetype2 >= 2.3.5 is needed by fontconfig-2.5.0-1
libexpat.a(libexpat.so.1) is needed by fontconfig-2.5.0-1
libfreetype.a(libfreetype.so.6) is needed by fontconfig-2.5.0-1
bash-4.3# rpm -ivh ./freetype2-2.3.9-1.aix5.2.ppc.rpm
freetype2 ##################################################
bash-4.3# rpm -ivh ./fontconfig-2.5.0-1.aix5.1.ppc.rpm
error: failed dependencies:
libexpat.a(libexpat.so.1) is needed by fontconfig-2.5.0-1
bash-4.3# rpm -ivh ./expat-2.0.1-1.aix5.2.ppc.rpm
expat ##################################################
bash-4.3# rpm -ivh ./fontconfig-2.5.0-1.aix5.1.ppc.rpm
fontconfig ##################################################
bash-4.3# rpm -ivh ./gd-2.0.35-5.aix5.1.ppc.rpm
error: failed dependencies:
libjpeg is needed by gd-2.0.35-5
libpng is needed by gd-2.0.35-5
libXpm >= 3.5.7 is needed by gd-2.0.35-5
libXpm.a(libXpm.so.4) is needed by gd-2.0.35-5
libjpeg.a(libjpeg.so.62) is needed by gd-2.0.35-5
libpng12.a(libpng12.so.0) is needed by gd-2.0.35-5
bash-4.3# rpm -ivh ./libjpeg-6b-6.aix5.1.ppc.rpm
libjpeg ##################################################
bash-4.3# rpm -ivh ./libpng-1.2.32-2.aix5.2.ppc.rpm
libpng ##################################################
bash-4.3# rpm -ivh ./gd-2.0.35-5.aix5.1.ppc.rpm
error: failed dependencies:
libXpm >= 3.5.7 is needed by gd-2.0.35-5
libXpm.a(libXpm.so.4) is needed by gd-2.0.35-5
bash-4.3# rpm -ivh ./libXpm-3.5.12-1.aix6.1.ppc.rpm
error: failed dependencies:
xorg-compat-aix is needed by libXpm-3.5.12-1
bash-4.3# rpm -ivh ./xorg-compat-aix-1.2-1.aix5.1.ppc.rpm
error: failed dependencies:
pkg-config is needed by xorg-compat-aix-1.2-1
bash-4.3# rpm -ivh ./pkg-config-0.25-1.aix5.1.ppc.rpm
pkg-config ##################################################
bash-4.3# rpm -ivh ./xorg-compat-aix-1.2-1.aix5.1.ppc.rpm
xorg-compat-aix ##################################################
bash-4.3# rpm -ivh ./libXpm-3.5.12-1.aix6.1.ppc.rpm
libXpm ##################################################
bash-4.3# rpm -ivh ./gd-2.0.35-5.aix5.1.ppc.rpm
gd ##################################################
bash-4.3# rpm -ivh ./nginx-1.12.2-1.aix5.3.ppc.rpm
error: failed dependencies:
libxslt >= 1.1.29-1 is needed by nginx-1.12.2-1
libxml2 >= 2.9.4-1 is needed by nginx-1.12.2-1
openssl >= 1.0.2l-1 is needed by nginx-1.12.2-1
pcre >= 8.41-1 is needed by nginx-1.12.2-1
libcrypto.a(libcrypto.so.1.0.2) is needed by nginx-1.12.2-1
libexslt.a(libexslt.so.0) is needed by nginx-1.12.2-1
libpcre.a(libpcre.so.1) is needed by nginx-1.12.2-1
libssl.a(libssl.so.1.0.2) is needed by nginx-1.12.2-1
libxslt.a(libxslt.so.1) is needed by nginx-1.12.2-1
bash-4.3# rpm -ivh ./libxslt-1.1.32-1.aix5.1.ppc.rpm
error: failed dependencies:
libxml2 >= 2.9.5-1 is needed by libxslt-1.1.32-1
libgcrypt >= 1.6.6-1 is needed by libxslt-1.1.32-1
libgcrypt.a(libgcrypt.so.20) is needed by libxslt-1.1.32-1
bash-4.3# rpm -ivh ./libxml2-2.9.7-1.aix5.1.ppc.rpm
error: failed dependencies:
libiconv >= 1.15-1 is needed by libxml2-2.9.7-1
xz-libs >= 5.2.3-1 is needed by libxml2-2.9.7-1
libiconv.a(libiconv.so.2) is needed by libxml2-2.9.7-1
liblzma.a(liblzma.so.5) is needed by libxml2-2.9.7-1
bash-4.3# rpm -ivh ./libiconv-1.15-1.aix5.1.ppc.rpm
error: failed dependencies:
gettext is needed by libiconv-1.15-1
bash-4.3# rpm -ivh ./get
gettext-0.10.40-6.aix5.1.ppc.rpm
bash-4.3# rpm -ivh ./gettext-0.10.40-6.aix5.1.ppc.rpm
gettext ##################################################
bash-4.3# rpm -ivh ./libiconv-1.15-1.aix5.1.ppc.rpm
libiconv ##################################################
bash-4.3# rpm -ivh ./xz-libs-5.2.3-1.aix6.1.ppc.rpm
xz-libs ##################################################
bash-4.3# rpm -ivh ./libxml2-2.9.7-1.aix5.1.ppc.rpm
libxml2 ##################################################
bash-4.3# rpm -ivh ./libgc
libgcc-6.3.0-1.aix7.1.ppc.rpm libgcrypt-1.8.2-1.aix5.2.ppc.rpm
bash-4.3# rpm -ivh ./libgc
libgcc-6.3.0-1.aix7.1.ppc.rpm libgcrypt-1.8.2-1.aix5.2.ppc.rpm
bash-4.3# rpm -ivh ./libgcrypt-1.8.2-1.aix5.2.ppc.rpm
error: failed dependencies:
libgpg-error >= 1.26-1 is needed by libgcrypt-1.8.2-1
libgpg-error.a(libgpg-error.so.0) is needed by libgcrypt-1.8.2-1
bash-4.3# rpm -ivh ./libgpg-error-1.27-1.aix5.1.ppc.rpm
libgpg-error ##################################################
bash-4.3# rpm -ivh ./libgcrypt-1.8.2-1.aix5.2.ppc.rpm
libgcrypt ##################################################
bash-4.3# rpm -ivh ./libxml2-2.9.7-1.aix5.1.ppc.rpm
package libxml2-2.9.7-1 is already installed
bash-4.3# rpm -ivh ./libxslt-1.1.32-1.aix5.1.ppc.rpm
libxslt ##################################################
bash-4.3# rpm -ivh ./nginx-1.12.2-1.aix5.3.ppc.rpm
error: failed dependencies:
openssl >= 1.0.2l-1 is needed by nginx-1.12.2-1
pcre >= 8.41-1 is needed by nginx-1.12.2-1
libcrypto.a(libcrypto.so.1.0.2) is needed by nginx-1.12.2-1
libpcre.a(libpcre.so.1) is needed by nginx-1.12.2-1
libssl.a(libssl.so.1.0.2) is needed by nginx-1.12.2-1
bash-4.3# rpm -ivh ./pcre-8.41-1.aix5.1.ppc.rpm
error: failed dependencies:
bzip2 >= 1.0.2-4 is needed by pcre-8.41-1
readline >= 7.0-2 is needed by pcre-8.41-1
libreadline.a(libreadline.so.7) is needed by pcre-8.41-1
bash-4.3# rpm -ivh ./bzip2-1.0.6-1.aix5.1.ppc.rpm
bzip2 ##################################################
bash-4.3# rpm -ivh ./readline-7.0-3.aix5.1.ppc.rpm
error: failed dependencies:
info is needed by readline-7.0-3
bash-4.3# rpm -ivh info-6.4-1.aix5.1.ppc.rpm
warning: /opt/freeware/info/dir created as /opt/freeware/info/dir.rpmnew
info ##################################################
Please check that /etc/info-dir does exist.
You might have to rename it from /etc/info-dir.rpmsave to /etc/info-dir.
bash-4.3# ls /etc/ | grep info
info-dir
bash-4.3# rpm -ivh ./readline-7.0-3.aix5.1.ppc.rpm
readline ##################################################
bash-4.3# rpm -ivh ./pcre-8.41-1.aix5.1.ppc.rpm
pcre ##################################################
bash-4.3# rpm -ivh ./nginx-1.12.2-1.aix5.3.ppc.rpm
error: failed dependencies:
openssl >= 1.0.2l-1 is needed by nginx-1.12.2-1
libcrypto.a(libcrypto.so.1.0.2) is needed by nginx-1.12.2-1
libssl.a(libssl.so.1.0.2) is needed by nginx-1.12.2-1
bash-4.3# rpm -ivh ./openssl-1.0.2l-1.aix5.1.ppc.rpm
openssl ##################################################
bash-4.3# rpm -ivh ./nginx-1.12.2-1.aix5.3.ppc.rpm
3004-686 Group "nginx" does not exist.
3004-687 User "nginx" does not exist.
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
user mperzl does not exist - using root
nginx ##################################################
bash-4.3#
所有rpm都安装完毕之后,系统已安装软件列表如下

bash-4.3# rpm -qa
zlib-1.2.3-7
freetype2-2.3.9-1
bash-4.3.30-1
tcl-8.4.7-3
tk-8.4.7-3
expect-5.42.1-3
AIX-rpm-7.1.2.15-2
GeoIP-1.5.1-1
libgcc-6.3.0-1
expat-2.0.1-1
fontconfig-2.5.0-1
libjpeg-6b-6
libpng-1.2.32-2
pkg-config-0.25-1
xorg-compat-aix-1.2-1
libXpm-3.5.12-1
gd-2.0.35-5
gettext-0.10.40-6
libiconv-1.15-1
xz-libs-5.2.3-1
libxml2-2.9.7-1
libgpg-error-1.27-1
libgcrypt-1.8.2-1
libxslt-1.1.32-1
bzip2-1.0.6-1
info-6.4-1
readline-7.0-3
pcre-8.41-1
openssl-1.0.2l-1
nginx-1.12.2-1

nginx被安装到了/opt/freeware/sbin/nginx 这里,可以加载配置文件直接运行,但是注意,配置文件里如果开启了log,那么要确保该日志目录存在而且当前用户拥有读写权限,下面给出一个最简单的反向代理的配置文件模板,可以方便测试nginx好不好用

user nobody;
worker_processes 1;

#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log debug;

#pid logs/nginx.pid;

events {
worker_connections 1024;
}

http {
#include mime.types;
default_type application/octet-stream;

log_format main ' [$time_local] $remote_addr:$remote_port [$status] $host "$request" '
'"$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" $cookie_jsessionid++$cookie_route $body_bytes_sent';

#access_log logs/access.log main;

sendfile on;
#tcp_nopush on;

#keepalive_timeout 0;
keepalive_timeout 65;

gzip on;

upstream demo {
server 192.168.1.2:89;
}

server {
listen 443;
server_name 192.168.1.2;

#charset koi8-r;

#access_log logs/host.access.log main;

location / {
proxy_pass http://demo;

proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}

}

二、根据源码编译nginx

如果要自己编译,就要在自己的AIX主机上安装编译环境,也就是GCC。注意通过官方提供的rpm包安装GCC之后nginx编译检查仍然通不过,需要将GCC软连接到CC才行。GCC所需的依赖包我也已经下载好,可以下载下面的压缩包,里面有这些rpm

gcc-6.3.0-1.aix7.1.ppc.rpm
gcc-cpp-6.3.0-1.aix7.1.ppc.rpm
gmp-5.1.3-2.aix6.1.ppc.rpm
info-6.4-1.aix5.1.ppc.rpm
libgcc-6.3.0-1.aix7.1.ppc.rpm
libiconv-1.15-1.aix5.1.ppc.rpm
libmpc-1.0.3-1.aix6.1.ppc.rpm
libstdcplusplus-6.3.0-1.aix7.1.ppc.rpm
mpfr-3.1.2-3.aix6.1.ppc.rpm
pcre-8.33-1.aix6.1.ppc.rpm
pcre-devel-8.33-1.aix6.1.ppc.rpm
readline-7.0-5.aix6.1.ppc.rpm
zlib-1.2.11-1.aix6.1.ppc.rpm
zlib-devel-1.2.11-1.aix6.1.ppc.rpm
下载地址:https://download.csdn.net/download/lvshaorong/10422859

其中pcre-devel和zlib-devel并不是编译器所需的依赖包,而是nginx的https模块所需的依赖包

将这几个包安装好,注意依赖顺序,其中gcc和gcc-cpp互相依赖,无法单独安装,方法是把这两个包放到单独一个文件夹里,然后使用rpm -ivh ./*来同时安装两个包,就能避免互相依赖的问题。

安装之后,就可以使用linux上编译nginx的方法来编译,简单来说,就是在源码文件夹下执行

./configue
检查编译环境,如果出现

bash-4.3# ./configure
checking for OS
+ AIX 1 00FA4D2E4C00
checking for C compiler ... not found

./configure: error: C compiler cc is not found

说明虽然安装了GCC,但是没有和CC建立关联,需要执行下面语句将CC软连接到GCC上

ln -s /opt/freeware/bin/gcc /usr/bin/cc

然后执行

make && make install
编译并安装,最后和linux一样,默认安装到/usr/local/nginx/bin/nginx

对于最近的几个版本,比如nginx 1.12.2和1.13.9,在make的时候都会遇见编译错误,如下

he.o src/core/ngx_open_file_cache.c
In file included from src/core/ngx_core.h:51:0,
from src/core/ngx_open_file_cache.c:9:
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_wrapper':
src/os/unix/ngx_files.h:91:34: error: overflow in implicit constant conversion [-Werror=overflow]
#define NGX_FILE_SEARCH (O_SEARCH|NGX_FILE_DIRECTORY)
^
src/os/unix/ngx_files.h:357:37: note: in definition of macro 'ngx_openat_file'
openat(fd, (const char *) name, mode|create, access)
^~~~
src/core/ngx_open_file_cache.c:713:28: note: in expansion of macro 'NGX_FILE_SEARCH'
NGX_FILE_SEARCH|NGX_FILE_NONBLOCK|NGX_FILE_NOFOLLOW,
^~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make: The error code from the last command is 1.

Stop.
make: The error code from the last command is 2.

Stop.
在liunx上编译并不会出现这个问题,应该是编译器的配置不一样,因为AIX上的编译器把所有的Warning都当做Error来处理,所以出现一个Warning就会直接终止编译过程。但我们知道这并不是源码的问题,所以可以忽略Warning。方法是

找到 nginx-1.x.x/objs/Makefile 这个文件,在第二行有一个“-Werror”,需要将其改为“-Wno-error”

改之前

CC = cc
CFLAGS = -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g
CPP = cc -E
LINK = $(CC)
改之后

CC = cc
CFLAGS = -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Wno-error -g
CPP = cc -E
LINK = $(CC)
然后就可以顺利的编译了

(转)AIX7.1安装Nginx 1.13的方法的更多相关文章

  1. centos7安装nginx的两种方法

    第一种方式:通过yum安装 直接通过 yum install nginx 肯定是不行的,因为yum没有nginx,所以首先把 nginx 的源加入 yum 中 运行下面的命令: 1.将nginx放到y ...

  2. Centos6、7下安装Nginx的两种方法

    一,通过yum命令安装 1.操作系统版本的确认很重要,因为下一步我们要依靠这个来创建yum源文件 2.创建 nginx.repo vi /etc/yum.repos.d/nginx.repo 文件内容 ...

  3. Centos7内核版安装nginx环境问题及解决方法

    错误信息:./configure: error: C compiler cc is not found解决方案:yum -y install gcc gcc-c++ autoconf automake ...

  4. Ubuntu下安装Nginx,PHP5(及PHP-FPM),MySQL

    .简介: Tomcat在高并发环境下处理动态请求时性能很低,而在处理静态页面更加脆弱.虽然Tomcat的最新版本支持epoll,但是通过Nginx来处理静态页面要比通过Tomcat处理在性能方面好很多 ...

  5. centos7.2 安装 nginx

    Centos 7 源码编译安装 Nginx 1.13 原文地址:https://renwole.com/archives/39 1.先决条件: centos7.2 64位,安装配置nginx前必须安装 ...

  6. Centos7 下nginx nginx-1.13.4 安装

    环境:CentOS Linux release 7.3.1611 (Core)  Linux localhost.localdomain 3.10.0-514.26.2.el7.x86_64 #1 S ...

  7. [Nginx]Ubuntu18.04 安装配置Nginx1.13.6+FastDFS

    一. 安装fastdfs依赖包 1. 解压缩libfastcommon-master.zip 2. 进入到libfastcommon-master的目录中 3. 执行 ./make.sh 4. 执行 ...

  8. Centos7 编译安装 Nginx PHP Mariadb Memcached 扩展 ZendOpcache扩展 (实测 笔记 Centos 7.3 + Mariadb 10.1.20 + Nginx 1.10.2 + PHP 7.1.0 + Laravel 5.3 )

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 安装步骤: 1.准备 1.0 查看硬 ...

  9. .Net Core Linux centos7行—安装nginx,运行静态网站

    使用编译安装方式安装nginx Nginx下载地址:http://nginx.org/en/download.html.下载Stable version(稳定版就好).当前稳定版:http://ngi ...

随机推荐

  1. README.md 编写

    Spring Boot Demo =========================== 该文件用来测试和展示书写README的各种markdown语法.GitHub的markdown语法在标准的ma ...

  2. MarkDown总结

    转载自:https://www.jianshu.com/p/q81RER:做了一些部分修改: 一:总纲 1.所有的格式均要空格,如#后面加个空格,-后面加空格,1.后面加空格等等: 2.双向包裹的不能 ...

  3. Effective C++ 随笔(1)

    条款一 c++ 为一个语言联邦 1.四个层次 C:blocks,语句,预处理器,内置数据类型,数组,指针 面向对象的C++:封装,多态,继承 Template C++ STL 条款二 尽量以const ...

  4. mysql 数据类型及java对应关系

    http://www.cnblogs.com/jerrylz/p/5814460.html    Java数据类型和MySql数据类型对应表 http://www.cnblogs.com/yiwd/p ...

  5. 通过pip安装套件

    pip3 install requests pip3 install BeautifulSoup4   还需要使用jupyter: pip3 install jupyter 打开jupyterbook ...

  6. (转)MYSQL远程登录权限设置

    转自:http://blog.csdn.net/zhengnz/article/details/6308773 Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录: 1. 进入mysql, ...

  7. Phalanx (hdu 2859)

    http://acm.hdu.edu.cn/showproblem.php?pid=2859     Time Limit: 10000/5000 MS (Java/Others)    Memory ...

  8. shell 命令 修改hosts文件

    hosts文件管理http地址和物理ip地址的映射关系. 开发spring cloud 项目时,遇到不能连接服务器部署的zk问题. 排查后发现,是本地的hosts文件没有添加这台机器的ip映射关系. ...

  9. 创建Pods私有库

    Pods私有库创建步骤 创建私有 Spec Repo 创建Pod项目工程文件 创建podspec文件 本地测试podsspec文件 向Spec Repo提交podspec Pod库使用 更新维护pos ...

  10. cxgrid动态创建列

    cxgrid动态创建列 procedure TFrmRuleEdit.CreateCols;varColumn: TcxGridDBColumn;begincdsPowerPrj.First;whil ...