首页 php教程 php手册 Centos 安装 nginx + php5.3

Centos 安装 nginx + php5.3

Jun 06, 2016 pm 08:13 PM
centos nginx 安装

Centos 安装 nginx + php5.3,点开查看详情。 #查看系统版本信息cat /etc/issue uname -a#设置时区 rm -rf /etc/localtime ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime#使用ntpdate同步时间 yum install -y ntp ntpdate -u pool.ntp.org date#

Centos 安装 nginx + php5.3,点开查看详情。

#查看系统版本信息
cat /etc/issue
 uname -a
#设置时区
 rm -rf /etc/localtime
 ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#使用ntpdate同步时间
 yum install -y ntp
 ntpdate -u pool.ntp.org
 date
#搜索删除相关rpm包
rpm -qa|grep httpd  #[搜索指定rpm包是否安装]--all搜索*httpd*
rpm -e httpd  #[删除一个rpm包]
rpm -qa | grep php
rpm -e php
yum -y remove httpd*
yum -y remove php*
yum -y remove php-mysql
#自动选择最快的yum源
yum -y install yum-fastestmirror
#关闭SELinux
vi /etc/selinux/config
#将SELINUX=enforcing改为SELINUX=disabled
#yum安装依赖库
yum -y install gcc gcc-c++ gcc-g77 flex bison file libtool libtool-libs autoconf kernel-devel libjpeg libjpeg-devel libpng libpng-devel libpng10 libpng10-devel gd gd-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glib2 glib2-devel bzip2 bzip2-devel libevent libevent-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel vim-minimal nano fonts-chinese gettext gettext-devel ncurses-devel gmp-devel pspell-devel unzip libcap diffutils
登录后复制

#下载、安装依赖库
wget -c http://soft.vpser.net/web/libiconv/libiconv-1.14.tar.gz
wget -c http://soft.vpser.net/web/libmcrypt/libmcrypt-2.5.8.tar.gz
wget -c http://soft.vpser.net/web/mhash/mhash-0.9.9.9.tar.gz
wget -c http://soft.vpser.net/web/mcrypt/mcrypt-2.6.8.tar.gz
wget -c http://soft.vpser.net/lib/autoconf/autoconf-2.13.tar.gz
#autoconf
tar zxf autoconf-2.13.tar.gz
cd autoconf-2.13/
./configure --prefix=/usr/local/autoconf-2.13
make && make install
cd ../
#libiconv
tar zxf libiconv-1.14.tar.gz
cd libiconv-1.14/
./configure
make && make install
cd ../
#libmcrypt
tar zxf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure
make && make install
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make && make install
cd ../../
#mhash
tar zxf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make && make install
cd ../
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
ldconfig
#mcrypt
tar zxf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
./configure
make && make install
cd ../
#如果是64位系统 则执行:
 ln -s /usr/lib64/libpng.* /usr/lib/
 ln -s /usr/lib64/libjpeg.* /usr/lib/
ldconfig
#修改ld.so.conf
cat /etc/ld.so.conf
echo "/lib" >> /etc/ld.so.conf
echo "/usr/lib" >> /etc/ld.so.conf
echo "/usr/lib64" >> /etc/ld.so.conf
echo "/usr/local/lib" >> /etc/ld.so.conf
#更新库缓存
ldconfig
登录后复制

#高负载linux服务器的内核调优

#修改限制

ulimit -v unlimited

#系统最大打开文件数优化

? ? 默认情况下,系统允许最大打开文件数为1024个,这对于访问量较大的web服务器来说远远不够用。系统最大打开文件数可以通过ulimit来修改和查询。

一般情况下,可以通过ulimit -n来查看目前系统允许的最大打开文件数,例如 :

ulimit -n

1024 #系统返回

? ? 永久修改该参数,要修改/etc/security/limits.conf

执行:

cat >>/etc/security/limits.conf<<eof
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
eof
##修改 /etc/sysctl.conf。 执行:
echo "fs.file-max=65535" >> /etc/sysctl.conf
##修改完成后运行以下命令使参数生效:
/sbin/sysctl -p
登录后复制

============================安装PHP5.3.28========================================

#安装PHP

#设置环境变量
export PHP_AUTOCONF=/usr/local/autoconf-2.13/bin/autoconf
export PHP_AUTOHEADER=/usr/local/autoconf-2.13/bin/autoheader
#下载PHP安装包
wget -c http://soft.vpser.net/web/php/php-5.3.28.tar.gz
#安装
tar zxf php-5.3.28.tar.gz
cd php-5.3.28/
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-magic-quotes --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --disable-fileinfo
make ZEND_EXTRA_LIBS='-liconv'
make install
rm -f /usr/bin/php
ln -s /usr/local/php/bin/php /usr/bin/php
ln -s /usr/local/php/bin/phpize /usr/bin/phpize
ln -s /usr/local/php/sbin/php-fpm /usr/bin/php-fpm
ldconfig
登录后复制
#复制php配置文件
mkdir -p /usr/local/php/etc
cp php.ini-production /usr/local/php/etc/php.ini
# php extensions
修改php.ini
sed -i 's/post_max_size = 8M/post_max_size = 50M/g' /usr/local/php/etc/php.ini
sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 50M/g' /usr/local/php/etc/php.ini
sed -i 's/;date.timezone =/date.timezone = PRC/g' /usr/local/php/etc/php.ini
sed -i 's/short_open_tag = Off/short_open_tag = On/g' /usr/local/php/etc/php.ini
sed -i 's/; cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g' /usr/local/php/etc/php.ini
sed -i 's/; cgi.fix_pathinfo=0/cgi.fix_pathinfo=0/g' /usr/local/php/etc/php.ini
sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g' /usr/local/php/etc/php.ini
sed -i 's/max_execution_time = 30/max_execution_time = 300/g' /usr/local/php/etc/php.ini
sed -i 's/register_long_arrays = On/;register_long_arrays = On/g' /usr/local/php/etc/php.ini
sed -i 's/magic_quotes_gpc = On/;magic_quotes_gpc = On/g' /usr/local/php/etc/php.ini
sed -i 's/disable_functions =.*/disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server/g' /usr/local/php/etc/php.ini
登录后复制

#Install ZendGuardLoader for PHP 5.3

64位系统执行:

wget -c?http://soft.vpser.net/web/zend/ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz
tar zxf ZendGuardLoader-php-5.3-linux-glibc23-x86_64.tar.gz
mkdir -p /usr/local/zend/
cp ZendGuardLoader-php-5.3-linux-glibc23-x86_64/php-5.3.x/ZendGuardLoader.so /usr/local/zend/

32位系统执行:

wget -c?http://soft.vpser.net/web/zend/ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz
tar zxf ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz
mkdir -p /usr/local/zend/
cp ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x/ZendGuardLoader.so /usr/local/zend/

#Write ZendGuardLoader to php.ini……

cat >>/usr/local/php/etc/php.ini<<EOF
;eaccelerator
;ionCube
[Zend Optimizer]
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=
EOF
登录后复制

echo “Creating new php-fpm configure file……”

cat >/usr/local/php/etc/php-fpm.conf<<EOF
[global]
pid = /usr/local/php/var/run/php-fpm.pid
error_log = /usr/local/php/var/log/php-fpm.log
log_level = notice
[www]
listen = /tmp/php-cgi.sock
listen.backlog = -1
listen.allowed_clients = 127.0.0.1
listen.owner = www
listen.group = www
listen.mode = 0666
user = www
group = www
pm = dynamic
pm.max_children = 10
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 6
request_terminate_timeout = 100
request_slowlog_timeout = 0
slowlog = /var/log/slow.log
EOF
登录后复制

#复制php-fpm init.d文件

cp ./php-5.3.28/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm

chmod +x /etc/init.d/php-fpm

============================安装PHP结束========================================

============================安装Nginx 1.6.0========================================

#安装Nginx

#建立用户组和用户
groupadd www
useradd -s /sbin/nologin -g www www
#下载安装PCRE库
wget -c http://soft.vpser.net/web/pcre/pcre-8.12.tar.gz
tar zxf pcre-8.12.tar.gz
cd pcre-8.12/
./configure
make && make install
cd ../
ldconfig
#下载、安装nginx
wget -c http://soft.vpser.net/web/nginx/nginx-1.6.0.tar.gz
tar zxf nginx-1.6.0.tar.gz
cd nginx-1.6.0/
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6
make && make install
cd ../
##设置软连接
ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx
ldconfig
#创建网站目录及设置权限
mkdir -p /data0/wwwroot
chmod +w /data0/wwwroot
chown -R www:www /data0/wwwroot
#创建日志目录及设置权限
mkdir -p /data0/wwwlogs
chmod 777 /data0/wwwlogs
登录后复制

#nginx配置文件

替换 /usr/local/nginx/conf/nginx.conf 的文本为:

user  www www;
worker_processes auto;
error_log  /data0/wwwlogs/nginx_error.log  crit;
pid        /usr/local/nginx/logs/nginx.pid;
#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 51200;
events
	{
		use epoll;
		worker_connections 51200;
		multi_accept on;
	}
http
	{
		include       mime.types;
		default_type  application/octet-stream;
		server_names_hash_bucket_size 128;
		client_header_buffer_size 32k;
		large_client_header_buffers 4 32k;
		client_max_body_size 50m;
		sendfile on;
		tcp_nopush     on;
		keepalive_timeout 60;
		tcp_nodelay on;
		fastcgi_connect_timeout 300;
		fastcgi_send_timeout 300;
		fastcgi_read_timeout 300;
		fastcgi_buffer_size 64k;
		fastcgi_buffers 4 64k;
		fastcgi_busy_buffers_size 128k;
		fastcgi_temp_file_write_size 256k;
		gzip on;
		gzip_min_length  1k;
		gzip_buffers     4 16k;
		gzip_http_version 1.0;
		gzip_comp_level 2;
		gzip_types       text/plain application/x-javascript text/css application/xml;
		gzip_vary on;
		gzip_proxied        expired no-cache no-store private auth;
		gzip_disable        "MSIE [1-6]\.";
		#limit_conn_zone $binary_remote_addr zone=perip:10m;
		##If enable limit_conn_zone,add "limit_conn perip 10;" to server section.
		server_tokens off;
		#log format
		log_format  access  '$remote_addr - $remote_user [$time_local] "$request" '
             '$status $body_bytes_sent "$http_referer" '
             '"$http_user_agent" $http_x_forwarded_for';
	include vhost/*.conf;
}
登录后复制

mkdir -p? /usr/local/nginx/conf/vhost

#创建虚拟机

#假如网站域名为 www.xxx.com,则创建网站目录

mkdir -p /data0/wwwroot/www.xxx.com

chown -R?www:www /data0/wwwroot/www.xxx.com

#,并在 /usr/local/nginx/conf/vhost? 下创建文件 www.xxx.com.conf,文件内容为一下,www.xxx.com替换为实际域名。

server
	{
		listen 80;
		server_name www.xxxx.com;
		index index.html index.htm index.php default.html default.htm default.php;
		root  /data0/wwwroot/www.xxxx.com;
		#error_page   404   /404.html;
		location ~ [^/]\.php(/|$)
			{
				# comment try_files $uri =404; to enable pathinfo
				try_files $uri =404;
				fastcgi_pass  unix:/tmp/php-cgi.sock;
				fastcgi_index index.php;
				include fastcgi.conf;
				#include pathinfo.conf;
			}
		location /nginx_status {
			stub_status on;
			access_log   off;
		}
		location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
			{
				expires      30d;
			}
		location ~ .*\.(js|css)?$
			{
				expires      12h;
			}
		access_log  /data0/wwwlogs/www.xxxx.com.log  access;
	}
登录后复制

#运行测试

cat >/data0/wwwroot/www.xxx.com/phpinfo.php
phpinfo();
?>
eof

#访问 http://www.xxx.com/phpinfo.php

#设置Nginx开机自启动

wget -c http://soft.vpser.net/lnmp/ext/init.d.nginx
cp init.d.nginx /etc/init.d/nginx
chmod +x /etc/init.d/nginx

chkconfig –add php-fpm
chkconfig –add nginxchkconfig –level 345 php-fpm on
chkconfig –level 345 nginx onchkconfig –list

/etc/init.d/php-fpm start
/etc/init.d/nginx start

#添加防火墙设置开放端口(看自身情况需要)

vi /etc/sysconfig/iptables

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
#重启防火墙
service iptables restart

#保存对防火墙的设置
service iptables save

============================安装Nginx 结束========================================

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

tomcat服务器怎么让外网访问 tomcat服务器怎么让外网访问 Apr 21, 2024 am 07:22 AM

要让 Tomcat 服务器对外网访问,需要:修改 Tomcat 配置文件,允许外部连接。添加防火墙规则,允许访问 Tomcat 服务器端口。创建 DNS 记录,将域名指向 Tomcat 服务器公有 IP。可选:使用反向代理提升安全性和性能。可选:设置 HTTPS 以提高安全性。

SCP使用技巧-递归排除文件 SCP使用技巧-递归排除文件 Apr 22, 2024 am 09:04 AM

人们可以使用scp命令在网络主机之间安全地复制文件。它使用ssh进行数据传输和身份验证。典型的语法是:scpfile1user@host:/path/to/dest/scp-r/path/to/source/user@host:/path/to/dest/scp排除文件我不认为你可以在使用scp命令时过滤或排除文件。但是,有一个很好的解决方法来排除文件并使用ssh安全地复制它。本页面说明如何在使用scp递归复制目录时过滤或排除文件。如何使用rsync命令排除文件语法是:rsyncav-essh-

html文件怎么生成网址 html文件怎么生成网址 Apr 21, 2024 pm 12:57 PM

要将 HTML 文件转换为网址,需要使用网络服务器,包括以下步骤:获取网络服务器。设置网络服务器。上传 HTML 文件。创建域名。路由请求。

nodejs可以外网访问么 nodejs可以外网访问么 Apr 21, 2024 am 04:43 AM

是的,Node.js 可以外网访问。您可以使用以下方法:使用 Cloud Functions 部署函数并公开访问。使用 Express 框架创建路由并定义端点。使用 Nginx 反向代理请求到 Node.js 应用程序。使用 Docker 容器运行 Node.js 应用程序并通过端口映射公开。

如何使用 PHP 部署和维护网站 如何使用 PHP 部署和维护网站 May 03, 2024 am 08:54 AM

要成功部署和维护PHP网站,需要执行以下步骤:选择Web服务器(如Apache或Nginx)安装PHP创建数据库并连接PHP上传代码到服务器设置域名和DNS监控网站维护步骤包括更新PHP和Web服务器、备份网站、监控错误日志和更新内容。

如何使用 Fail2Ban 保护服务器免受暴力攻击 如何使用 Fail2Ban 保护服务器免受暴力攻击 Apr 27, 2024 am 08:34 AM

Linux管理员的一个重要任务是保护服务器免受非法攻击或访问。默认情况下,Linux系统带有配置良好的防火墙,比如iptables、UncomplicatedFirewall(UFW),ConfigServerSecurityFirewall(CSF)等,可以防止多种攻击。任何连接到互联网的机器都是恶意攻击的潜在目标。有一个名为Fail2Ban的工具可用来缓解服务器上的非法访问。什么是Fail2Ban?Fail2Ban[1]是一款入侵防御软件,可以保护服务器免受暴力攻击。它是用Python编程语

和我一起来学习Linux安装Nginx 和我一起来学习Linux安装Nginx Apr 28, 2024 pm 03:10 PM

而今天将来一起带领大家在Linux环境安装Nginx,这里用的Linux系统是CentOS7.2.准备安装工具1.从Nginx官网下载Nginx。这里用的版本为:1.13.6.2.将下载下来的Nginx上传到Linux上,这里以/opt/nginx目录为例。运行“tar-zxvfnginx-1.13.6.tar.gz”进行解压。3.切换到/opt/nginx/nginx-1.13.6目录下,运行./configure进行初始化配置。如出现下面的提示,说明该机器没有安装PCRE,而Nginx需要依

keepalived+nginx搭建高可用几个注意点 keepalived+nginx搭建高可用几个注意点 Apr 23, 2024 pm 05:50 PM

在yum安装完keepalived之后,配置keepalived的配置文件注意点在master和backup的keepalived的配置文件中,网卡名字为当前机器的网卡名称VIP的选择为可用的一个ip,通常在做高可用,局域网环境比较多,所以这个vip是和两台机器同网段的一个内网ip。如果用在外网环境下,无所谓在不在一个网段,只要客户端能访问到。停掉nginx服务,启动keepalived服务,会看到keepalived拉动nginx服务启动若是无法启动失败,基本都是配置文件和脚本的问题,或者是防

See all articles