欢迎来到皮皮网官网

【菜鸟源码是】【wephone源码分析】【仿4493源码】centos nginx 源码编译

时间:2024-11-14 14:13:52 来源:在线 客服 源码

1.centos5 源码安装Nginx + mysql + apache + php的源译方法
2.centos8自定义目录安装nginx教程详解
3.如何隐藏nginx的版本号
4.WSL2子系统安装CentOS8及源码编译Nginx1.18+PHP7.4+MySql8.0开发环境
5.centos8编译安装nginx
6.centos如何安装指定版本的nginx?

centos nginx 源码编译

centos5 源码安装Nginx + mysql + apache + php的方法

       主要依照的是张宴的一篇博文《blogs.com/

       3] mhash库

       复制代码

           

       代码如下:

       tar zxvf mhash-0.9.9.9.tar.gz

           cd mhash-0.9.9.9/

           ./configure

           make

           make install

           cd ../

       4]mcrypt库

       注意:因为该库和libmcrypt有依赖性,所以在安装前必须知道libmcrypt,码编否则的源译话会出现:

       错误

       复制代码

           

       代码如下:

       checking for libmcrypt – version = 2.5.0…

           *** ‘libmcrypt-config –version’ returned 2.4.0, but LIBMCRYPT (2.5.8)

           *** was found! If libmcrypt-config was correct, then it is best

           *** to remove the old version of LIBMCRYPT. You may also be able to fix the error

           *** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing

           *** /etc/ld.so.conf. Make sure you have run ldconfig if that is

           *** required on your system.

           *** If libmcrypt-config was wrong, set the environment variable LIBMCRYPT_CONFIG

           *** to point to the correct copy of libmcrypt-config, and remove the file config.cache

           *** before re-running configure

           configure: error: *** libmcrypt was not found

       是因为path的问题,所以执行:

       复制代码

           

       代码如下:

       ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la

           ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so

           ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4

           ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8

           ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a

           ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la

           ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so

           ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2

           ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib/libmhash.so.2.0.1

           ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config

       然后再安装:

       复制代码

           

       代码如下:

       tar zxvf mcrypt-2.6.8.tar.gz

           cd mcrypt-2.6.8/

           /sbin/ldconfig

           ./configure

           make

           make install

           cd ../

       二、码编安装mysql

       复制代码

           

       代码如下:

       /usr/sbin/groupadd mysql

           /usr/sbin/useradd -g mysql xxx

           unzip mysql-5.1..zip

           cd mysql-5.1./

           ./configure --prefix=/usr/local/webserver/mysql/ --enable-assembler --with-extra-charsets=complex --enable-thread-safe-client --with-big-tables

           --with-readline --with-ssl --with-embedded-server --enable-local-infile --with-plugins=innobase

           make

           make install

           make clean

           make distclean

           chmod +w /usr/local/webserver/mysql

           chown -R xxx:mysql /usr/local/webserver/mysql

           cp support-files/my-medium.cnf.sh /usr/local/webserver/mysql/my.cnf

           cd ../

       注意:这里编译./configure命令是源译一行的而不能有换行符,如果是码编菜鸟源码是copy的时候,注意要去处该换行符

       在最后一步拷贝的源译时候,我安装完在support-files下没有my-medium.cnf而只有my-medium.cnf.sh所以将这个文件拷贝过去。码编

       @张宴原文:

       附:以下为附加步骤,源译如果你想在这台服务器上运行MySQL数据库,码编则执行以下两步。源译如果你只是码编希望让PHP支持MySQL扩展库,能够连接其他服务器上的源译MySQL数据库,那么,码编以下两步无需执行。源译wephone源码分析

       ①、以xxx用户帐号的身份建立数据表:

       复制代码

           

       代码如下:

       /usr/local/webserver/mysql/bin/mysql_install_db --basedir=/usr/local/webserver/mysql --datadir=/usr/local/webserver/mysql/data --user=xxx

       ②、启动MySQL(最后的表示在后台运行)

       复制代码

           

       代码如下:

       /bin/sh /usr/local/webserver/mysql/bin/mysqld_safe --defaults-file=/usr/local/webserver/mysql/my.cnf

       3、编译安装PHP(FastCGI模式)

       复制代码

           

       代码如下:

       tar zxvf php-5.2.8.tar.gz

           gzip -cd php-5.2.8-fpm-0.5..diff.gz | patch -d php-5.2.8 -p1

           cd php-5.2.8/

           ./configure --prefix=/usr/local/webserver/php --with-config-file-path=/usr/local/webserver/php/etc --with-mysql=/usr/local/webserver/mysql

           --with-mysqli=/usr/local/webserver/mysql/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib

           --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem

           --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect

           --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap

           --with-ldap-sasl

           make ZEND_EXTRA_LIBS='-liconv'

           make install

           cp php.ini-dist /usr/local/webserver/php/etc/php.ini

           cd ../

       注意:这里./configure命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符

       4、编译安装PHP5扩展模块--可选安装

       复制代码

           

       代码如下:

       tar zxvf memcache-2.2.5.tgz

           cd memcache-2.2.5/

           /usr/local/webserver/php/bin/phpize

           ./configure --with-php-config=/usr/local/webserver/php/bin/php-config

           make

           make install

           make clean

           make distclean

           cd ../

           tar jxvf eaccelerator-0.9.5.3.tar.bz2

           cd eaccelerator-0.9.5.3/

           /usr/local/webserver/php/bin/phpize

           ./configure --enable-eaccelerator=shared --with-php-config=/usr/local/webserver/php/bin/php-config

           make

           make install

           make clean

           make distclean

           cd ../

           tar zxvf PDO_MYSQL-1.0.2.tgz

           cd PDO_MYSQL-1.0.2/

           /usr/local/webserver/php/bin/phpize

           ./configure --with-php-config=/usr/local/webserver/php/bin/php-config --with-pdo-mysql=/usr/local/webserver/mysql

           make

           make install

           make clean

           make distclean

           cd ../

           tar zxvf ImageMagick.tar.gz

           cd ImageMagick-6.5.1-2/

           ./configure

           make

           make install

           make clean

           make distclean

           cd ../

           tar zxvf imagick-2.2.2.tgz

           cd imagick-2.2.2/

           /usr/local/webserver/php/bin/phpize

           ./configure --with-php-config=/usr/local/webserver/php/bin/php-config

           make

           make install

           make clean

           make distclean

           cd ../

       5、修改php.ini文件

       STRONG手工修改:/STRONG查找/usr/local/webserver/php/etc/php.ini中的extension_dir = "./"

       修改为extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-/"

       并在此行后增加以下几行,然后保存:

       extension = "memcache.so"

       extension = "pdo_mysql.so"

       extension = "imagick.so"

       再查找output_buffering = Off

       修改为output_buffering = On

       6、配置eAccelerator加速PHP:

       mkdir -p /usr/local/webserver/eaccelerator_cache

       vi /usr/local/webserver/php/etc/php.ini

       按shift+g键跳到配置文件的最末尾,加上以下配置信息:

       复制代码

           

       代码如下:

       [eaccelerator]

           zend_extension="/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-/eaccelerator.so"

           eaccelerator.shm_size=""

           eaccelerator.cache_dir="/usr/local/webserver/eaccelerator_cache"

           eaccelerator.enable="1"

           eaccelerator.optimizer="1"

           eaccelerator.check_mtime="1"

           eaccelerator.debug="0"

           eaccelerator.filter=""

           eaccelerator.shm_max="0"

           eaccelerator.shm_ttl=""

           eaccelerator.shm_prune_period=""

           eaccelerator.shm_only="0"

           eaccelerator.compress="1"

           eaccelerator.compress_level="9"

       修改配置文件:

       vi /etc/sysctl.conf

       kernel.shmmax =

       然后执行以下命令使配置生效:/sbin/sysctl -p

       以下的步骤和张宴步骤中一样配置,不再赘诉

centos8自定义目录安装nginx教程详解

       1.安装工具和库

       # PCRE是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的仿4493源码 f配置文件,启动MySql。

       . 源码编译安装php7.4

       下载php7.4源码,安装编译工具和库文件,创建用户组和用户,配置编译参数,解压缩并移动到指定目录,检查配置并生成配置文件,安装完成。

       . LNMP环境测试

       测试Nginx和PHP-FPM的配合,配置Nginx和PHP-FPM,通过phpinfo文件验证php和Nginx的配合情况,测试phpMyAdmin,确保数据库连接无误,至此,写源码工具LNMP环境测试完成。

centos8编译安装nginx

       安装前准备

       首先,确保您的 CentOS-8 系统已更新软件包。

       接下来,安装编译器及相应的开发库。

       访问 nginx 官网下载最新的 nginx 版本。

       解压下载的 nginx 安装包。

       对 nginx 源码进行预编译和配置,以便生成可执行的二进制文件。

       启动编译和安装过程,完成 nginx 的安装。

centos如何安装指定版本的nginx?

       在 CentOS 上安装指定版本的 Nginx,首先访问 Nginx 官方网站获取所需版本的源码。下载完成后,虚拟鼠标源码使用命令行编译并安装源码。编译过程通常涉及解压源码,进入解压后的目录并执行 ./configure 命令,以确保与系统兼容性。接着执行 make 命令生成可执行文件,最后使用 make install 命令安装 Nginx。

       安装过程中,可能会遇到编译选项问题。确保正确配置编译选项,如指定安装路径、启用或禁用特定功能等。在执行 ./configure 命令时,根据需要添加相应的选项参数。例如,要指定特定的安装目录,可使用 --prefix=/usr/local/nginx 选项;若需安装自定义模块,可以添加 --add-module=/path/to/module 选项。

       另一个解决方案是使用 Docker 容器技术。Docker 可以提供一个隔离的环境,简化 Nginx 的安装和配置过程。通过创建或拉取包含所需 Nginx 版本的 Docker 镜像,可以轻松地在 Docker 容器中运行 Nginx。利用 Dockerfile 编写构建脚本,可以进一步定制容器内的环境,如配置文件、自定义模块等。

       无论选择编译安装还是使用 Docker,都需要确保系统依赖库满足 Nginx 的要求,如 OpenSSL、zlib、pcre 等。通过包管理器(如 yum 或 apt)安装必要的依赖库,可以简化整个安装流程。安装完成后,可以通过 systemctl 命令启动、停止或管理 Nginx 服务,确保其正常运行。

       总之,在 CentOS 上安装指定版本的 Nginx,可以采用编译安装或 Docker 容器技术。通过正确配置编译选项或选择合适的 Docker 镜像,可以轻松实现目标,并确保 Nginx 在 CentOS 系统上的稳定运行。

CentOS 6.2编译安装Nginx1.0.+MySQL5.5.+PHP5.3.步骤分享

       说明:

       操作系统:CentOS 6.2 位

           准备篇:

           一、配置好IP、DNS 、网关,确保使用远程连接工具能够连接服务器

           二、配置防火墙,开启端口、端口

           vi /etc/sysconfig/iptables

           -A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT(允许端口通过防火墙)

           -A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT(允许端口通过防火墙)

           特别提示:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败,正确的应该是添加到默认的端口这条规则的下面

           添加好之后防火墙规则如下所示:

           #########################################################

           # Firewall configuration written by system-config-firewall

           # Manual customization of this file is not recommended.

           *filter

           :INPUT ACCEPT [0:0]

           :FORWARD ACCEPT [0:0]

           :OUTPUT ACCEPT [0:0]

           -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

           -A INPUT -p icmp -j ACCEPT

           -A INPUT -i lo -j ACCEPT

           -A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT

           -A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT

           -A INPUT -m state --state NEW -m tcp -p tcp --dport -j ACCEPT

           -A INPUT -j REJECT --reject-with icmp-host-prohibited

           -A FORWARD -j REJECT --reject-with icmp-host-prohibited

           COMMIT

           #########################################################

           /etc/init.d/iptables restart #最后重启防火墙使配置生效

           三、关闭SELINUX

           vi /etc/selinux/config

           #SELINUX=enforcing #注释掉

           #SELINUXTYPE=targeted #注释掉

           SELINUX=disabled #增加

           :wq 保存,关闭

           shutdown -r now #重启系统

           四 、系统约定

           软件源代码包存放位置:/usr/local/src

           源码包编译安装位置:/usr/local/软件名字

           五、下载软件包

           1、下载nginx(目前稳定版)

           .php.net/distributions/php-5.3..tar.gz

           5、下载cmake(MySQL编译工具)

           f /etc/my.cnf #拷贝配置文件(注意:如果/etc目录下面默认有一个my.cnf,直接覆盖即可)

           vi /etc/my.cnf #编辑配置文件,在 [mysqld] 部分增加

           datadir = /data/mysql #添加MySQL数据库路径

           ./scripts/mysql_install_db --user=mysql #生成mysql系统数据库

           cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld #把Mysql加入系统启动

           chmod /etc/init.d/mysqld #增加执行权限

           chkconfig mysqld on #加入开机启动

           vi /etc/rc.d/init.d/mysqld #编辑

           basedir = /usr/local/mysql #MySQL程序安装路径

           datadir = /data/mysql #MySQl数据库存放目录

           service mysqld start #启动

           vi /etc/profile #把mysql服务加入系统环境变量:在最后添加下面这一行

           export PATH=$PATH:/usr/local/mysql/bin

           下面这两行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址。

           ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql

           ln -s /usr/local/mysql/include/mysql /usr/include/mysql

           shutdown -r now #需要重启系统,等待系统重新启动之后继续在终端命令行下面操作

           mysql_secure_installation #设置Mysql密码

           根据提示按Y 回车输入2次密码

           或者直接修改密码/usr/local/mysql/bin/mysqladmin -u root -p password "" #修改密码

           service mysqld restart #重启

           到此,mysql安装完成!

           五、安装 nginx

           groupadd www #添加www组

           useradd -g www www -s /bin/false #创建nginx运行账户www并加入到www组,不允许www用户直接登录系统cd /usr/local/src

           tar zxvf nginx-1.0..tar.gz

           cd nginx-1.0.

           ./configure --prefix=/usr/local/nginx --user=www --group=www --with-tl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl #配置

           make #编译

           make install #安装

           cp php.ini-production /usr/local/php5/etc/php.ini #复制php配置文件到安装目录

           rm -rf /etc/php.ini #删除系统自带配置文件

           ln -s /usr/local/php5/etc/php.ini /etc/php.ini #添加软链接

           cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf #拷贝模板文件为php-fpm配置文件

           vi /usr/local/php5/etc/php-fpm.conf #编辑

           user = www #设置php-fpm运行账号为www

           group = www #设置php-fpm运行组为www

           pid = run/php-fpm.pid #取消前面的分号

           设置 php-fpm开机启动

           cp /usr/local/src/php-5.3./sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm #拷贝php-fpm到启动目录

           chmod +x /etc/rc.d/init.d/php-fpm #添加执行权限

           chkconfig php-fpm on #设置开机启动

           vi /usr/local/php5/etc/php.ini #编辑配置文件

           找到:;open_basedir =

           修改为:open_basedir = .:/tmp/ #防止php木马跨站,重要!!

           找到:disable_functions =

           修改为:disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname

           #列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。

           找到:;date.timezone =

           修改为:date.timezone = PRC #设置时区

           找到:expose_php = On

           修改为:expose_php = OFF #禁止显示php版本的信息

           找到:display_errors = On

           修改为:display_errors = OFF #关闭错误提示

           七、配置nginx支持php

           vi /usr/local/nginx/conf/nginx.conf

           修改/usr/local/nginx/conf/nginx.conf 配置文件,需做如下修改

           user www www; #首行user去掉注释,修改Nginx运行组为www www;必须与/usr/local/php5/etc/php-fpm.conf中的user,group配置相同,否则php运行出错

           index index.php index.html index.htm; #添加index.php

           # pass the PHP scripts to FastCGI server listening on .0.0.1:

           #

           location ~ /.php$ {

           root html;

           fastcgi_pass .0.0.1:;

           fastcgi_index index.php;

           fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

           include fastcgi_params;

           }

           #取消FastCGI server部分location的注释,并要注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径

           /etc/init.d/nginx restart #重启nginx

           八、配置php支持Zend Guard

           安装Zend Guard

           cd /usr/local/src

           mkdir /usr/local/zend #建立Zend安装目录

           tar xvfz ZendGuardLoader-php-5.3-linux-glibc-i.tar.gz #解压安装文件

           cp ZendGuardLoader-php-5.3-linux-glibc-i/php-5.3.x/ZendGuardLoader.so /usr/local/zend/ #拷贝文件到安装目录

           vi /usr/local/php5/etc/php.ini #编辑文件

           在最后位置添加以下内容

           [Zend Guard]

           zend_extension=/usr/local/zend/ZendGuardLoader.so

           zend_loader.enable=1

           zend_loader.disable_licensing=0

           zend_loader.obfuscation_level_support=3

           zend_loader.license_path=

           测试篇

           cd /usr/local/nginx/html/ #进入nginx默认网站根目录

           rm -rf /usr/local/nginx/html/* #删除默认测试页

           vi index.php #新建index.php文件

           ?php

           phpinfo();

           ?

           :wq! #保存

           chown www.www /usr/local/nginx/html/ -R #设置目录所有者

           chmod /usr/local/nginx/html/ -R #设置目录权限

           shutdown -r now #重启

           在客户端浏览器输入服务器IP地址,可以看到相关的配置信息!

           service nginx restart #重启nginx

           service mysqld restart #重启mysql

           /usr/local/php5/sbin/php-fpm #启动php-fpm

           /etc/rc.d/init.d/php-fpm restart #重启php-fpm

           /etc/rc.d/init.d/php-fpm stop #停止php-fpm

           /etc/rc.d/init.d/php-fpm start #启动php-fpm

           #############################################################################

           备注:

           nginx默认站点目录是:/usr/local/nginx/html/

           权限设置:chown www.www /usr/local/nginx/html/ -R

           MySQL数据库目录是:/data/mysql

           权限设置:chown mysql.mysql -R /data/mysql

           到此,CentOS 6.2下 Nginx1.0.+MySQL5.5.+PHP5.3.+Zend Guard Loader基本运行环境搭建完成!

copyright © 2016 powered by 皮皮网   sitemap