服务器环境配置nginx / php / php-fpm(一)
- 登陆,升级应用,查询和关闭selinux
yum update
getenforce
setenforce 0
vi /etc/selinux - 添加非root用户
adduser deploy
passwd deploy
usermod -a -G wheel deploy
vi /etc/sudoers
%wheel ALL=(ALL) ALL - ssh配置

ssh deploy@123.456.78.90
ssh-keygen
mkdir ~/.ssh
scp ~/.ssh/id_rsa.pub deploy@123.456.78.90:
touch ~/.ssh/authorized_keys
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
chown -R deploy:deploy ~/.ssh
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
- 禁止密码与root登陆,先确定sudo权限,打开 /etc/ssh/sshd_config,修改 PasswordAuthentication 的值为 no,取消注释。修改PermitRootLogin同上。重启SSHD。
service sshd restart
- PHP、PHP-FPM 安装

sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm;
//32位地址 http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm; sudo yum -y --enablerepo=epel,remi,remi-php56 install php-fpm php-cli php-gd php-mbstring php-mcrypt php-mysqlnd php-opcache php-pdo php-devel;
- PHP-FPM配置
sudo vi /etc/php-fpm.conf
//修改以下两处,1分钟内子进程失败达到10个就优雅重启
emergency_restart_threshold = 10
emergency_restart_interval = 1m在配置文件中有 include=/etc/php-fpm.d/*.conf , 表示池定义 pool definition 在php-fpm.d目录下

vi /etc/php-fpm.d/www.conf
//修改用户,尽量每个网站一个用户
user = deploy
group = deploy
//与nginx请求处理的端口
listen = 127.0.0.1:9000
//服务器内存除以进程占用内存
pm.max_children = 50
//开启服务时自动开启的准备进程数
pm.start_servers = 3
//每个池的最大进程数
pm.max_requests = 1000
//慢日志
slowlog = /path/to/slowlog.log
request_slowlog_timeout = 5s
//最后重启服务
sudo service php-fpm restart
chkconfig php-fpm on
- 安装nginx
sudo yum install nginx;
sudo systemctl enable nginx.service;
sudo systemctl start nginx.service; - 建立网站目录与日志目录
mkdir -p /home/deploy/apps/example.com/current/public
mkdir -p /home/deploy/apps/logs
chmod -R +rx /home/deploy建立 /etc/nginx/conf.d/example.conf

server
{
listen 80;
server_name example.com;
index index.php;
client_max_body_size 50M;
error_log /home/deploy/apps/logs/example.error.log;
access_log /home/deploy/apps/logs/example.access.log;
root /home/deploy/apps/example.com/current/public;
location /
{
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php {
try_files $uri=404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
}
}
- 重启
sudo systemctl restart nginx.service
sudo chkconfig nginx on
//如果权限失败了, 以root权限启动
sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf - 检查防火墙,检查端口,检查selinux /getenforce ,最后可以编辑一个phpinfo页面放在网站根目录,在主机设置好hosts映射到虚拟机,终于可以在主机浏览器中输入虚拟机地址,见到php页面了。
- 多虚拟机参考http://www.androiddev.net/webserver-apache-to-nginx/
- 配置参考 http://huoding.com/2013/10/23/290

server {
listen 80;
server_name foo.com; root /path;
index index.html index.htm index.php; location / {
try_files $uri $uri/ /index.php$is_args$args;
} location ~ \.php$ {
try_files $uri =404; include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
}
}
fastcgi_pass unix:/dev/shm/php-fpm.sock;
服务器环境配置nginx / php / php-fpm(一)的更多相关文章
- laravel5.8笔记一:安装与服务器环境配置
laravel版本:5.8 环境要求: PHP >= 7.1.3 OpenSSL PHP 扩展 PDO PHP 扩展 Mbstring PHP 扩展 Tokenizer PHP 扩展 XML P ...
- LNMP(linux+nginx+mysql+php)服务器环境配置【转载】
本文转载自 园友David_Tang的博客,如有侵权请联系本人及时删除,原文地址: http://www.cnblogs.com/mchina/archive/2012/05/17/2507102.h ...
- [亲测]ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问
前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...
- [亲测]七步学会ASP.NET Core 2.0怎么发布/部署到Ubuntu Linux服务器并配置Nginx反向代理实现域名访问
前言 ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用ASP.NET Core网站绑定到指定的域名,让外网用户可以访问呢? 步骤 第1步:准备工作 一台Liun ...
- ASP.NET Core 2.0发布/部署到Ubuntu服务器并配置Nginx反向代理
原文链接https://www.linuxidc.com/Linux/2017-12/149557.htm ASP.NET Core 2.0 怎么发布到Ubuntu服务器?又如何在服务器上配置使用AS ...
- Ubuntu 下 Apache2 和 PHP 服务器环境配置
Ubuntu 下 Apache2 和 PHP 服务器环境配置 1.简介 本文主要是 Ubuntu 下 Apache2 和 PHP 服务器环境配置方法,同样适用于 Debian 系统:Ubuntu 20 ...
- 零基础建站如何配置PHP运行环境 几种服务器环境配置的选择和方法
上次给大家分享了小白建站如何选择虚拟空间及服务器,及购买域名的基础知识,这些是硬性要求,你的网站要想运行起来,硬件只是基础,真正的技术是软件,关于PHP软件开发技术,后面我们会慢慢的分享给大家,今天主 ...
- linux系统上安装svn服务器 环境linux+nginx+svnserver
系统:Ubuntu 12.04 64位 lnmp环境 集成软件:PHP5.4.27.Nginx1.6.0.MySQL5.5.37 阿里云server svnserver有2种执行方式:独立server ...
- 超算云(GPU服务器)环境配置
最近在用并行超算云GPU服务器(中国国家网格12区)搭建毕设的环境,这里记录一下. 首先,超算云服务器的登录可以采用网页版.也可以采用客户端(超算云地址:https://cloud.paratera. ...
随机推荐
- /etc/docker/key.json
/etc/docker/key.json 描述信息: This is the dockerd key for TLS connections.in web format, that docker us ...
- Python 处理输入输出
sys.stdin.read() 用于接收标准输入,也就是让用户通过键盘进行输入sys.stdout.write() 用于打印标准输出,也就是把输入的数据输出到屏幕sys.stderr.write() ...
- C 环境设置(转自菜鸟教程)
C 环境设置 本地环境设置 如果您想要设置 C 语言环境,您需要确保电脑上有以下两款可用的软件,文本编辑器和 C 编译器. 文本编辑器 这将用于输入您的程序.文本编辑器包括 Windows Notep ...
- jQueryValidate实现重复性验证
$(function(){ $("#frm").validateForm({ rules:{ 'caResourceSt ...
- LNMP ftp 可以登录无权限操作?
服务器环境: LNMP ftp : LNMP ftp一键安装 嘛卖批啊! 解决办法: 登录服务器.执行以下命令 chattr -i /home/wwwroot/default/.user.ini c ...
- C++虚继承的概念[转]
C++中虚拟继承的概念 为了解决从不同途径继承来的同名的数据成员在内存中有不同的拷贝造成数据不一致问题,将共同基类设置为虚基类.这时从不同的路径继承过来的同名数据成员在内存中就只有一个拷贝,同一个函数 ...
- LeetCode——pow(x, n)
超时了,只能先这么干了. return Math.pow(x, n);
- LeetCode——Intersection of Two Linked Lists
Description: Write a program to find the node at which the intersection of two singly linked lists b ...
- TextureMerger1.6.6 二:Sprite Sheet的制作和使用
本随笔记录下Sprite Sheet的制作和使用 Sprite Sheet主要用于将零碎的小图合并成一张整图.减少加载图片时http的请求次数. 1 打开TextureMerger,选择Sprite ...
- Windows Phone 自定义一个启动画面
1.新建一个UserControl <UserControl x:Class="LoadingPage.PopupSplash" xmlns="http://sch ...