部署php的正确姿势
1、 更新源
apt-get update
2、安装apache
apt-get install apache2
ubuntu下apache2虚拟主机配置
cd /etc/apache2/sites-available
ls
000-default.conf default-ssl.conf
sudo cp 000-default.conf 000-default.conf.bak
sudo vim 000-default.conf
文件修改为以下内容
// 此处由于下边要把apache端口设为8080 也要改为8080端口
<VirtualHost *:8080> ServerAdmin webmaster@localhost
DocumentRoot /data/www ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined <Directory />
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory> </VirtualHost>
3、安装php7.0
apt-get install php7.0
4、安装mysql https://www.cnblogs.com/Mvloveyouforever/p/9931290.html
5、安装nginx
apt-get install nginx
①配置nginx
- 修改
/etc/nginx/sites-available/default
location ~ \.php$ {
#include snippets/fastcgi-php.conf;
#With php7.0-cgi alone:
#fastcgi_pass 127.0.0.1:9000;
#With php7.0-fpm:
#fastcgi_pass unix:/run/php/php7.0-fpm.sock;
proxy_pass http://127.0.0.1:8080; # 添加此代码,指向动态服务器的ip地址及端口号
}
②配置apache
- 修改监听的端口号
/etc/apache2/ports.conf
# Listen 80
Listen 8080
③重启服务
/etc/init.d/nginx reload
/etc/init.d/apache2 reload
至此: 带php后缀的 80端口 直接指向apache,其他从nginx配置走。
6、安装 php-fpm
apt-get install php-fpm
更新 php-fpm配置
// 改php-fpm配置文件 vim /etc/php/7.0/fpm/pool.d/www.conf // 找到 listen = // tcp方式 (现在用的是tcp)
listen = 127.0.0.1:9000
// socket方式
listen = /run/php/php7.0-fpm.sock // 测试是否有误,显示successful即无误
sudo php-fpm7.0 -t // 重启php-fpm
sudo service php7.0-fpm restart
7、配置apache2 链接 php-fpm
加载模块
apache用php-fpm方式要加载两个模块mod_proxy.so与mod_proxy_fcgi.so,先要Load这两个模块。
ln -s /etc/apache2/mods-available/proxy.conf /etc/apache2/mods-enabled/proxy.conf
ln -s /etc/apache2/mods-available/proxy.load /etc/apache2/mods-enabled/proxy.load
ln -s /etc/apache2/mods-available/proxy_fcgi.load /etc/apache2/mods-enabled/proxy_fcgi.load
vim /etc/apache2/sites-available/000-default.conf // 在<VirtualHost *:8080>内加上
// 这里IfModule 意思是当检测到加载了mod_proxy模块,才执行里面的内容,笔者认为应该要加上mod_proxy_fcgi.c的,但没找到写两个模块的写法..
<IfModule mod_proxy.c>
ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9000/data/www/$1
DirectoryIndex /index.php index.php
</IfModule>
// 测试是否配置正确 success为正确
apache2 -t
// 重启apache
service apache2 restart
8、部署了 laravel之后的 nginx配置
location ^~ /public/ {
# include snippets/fastcgi-php.conf;
#
# # With php7.0-cgi alone:
# fastcgi_pass 127.0.0.1:8080;
# # With php7.0-fpm:
# fastcgi_pass unix:/run/php/php7.0-fpm.sock;
proxy_pass http://127.0.0.1:8080; # 添加此代码,指向动态服务器的ip地址及端口号
}
然后,发现服务器不打印错误 555
// 在 data/www 下开启文件访问权限 sudo chmod -R 777 项目名
9、开启curl
1、通过命令搜索可用扩展:
apt-cache search curl
2、安装
apt-get install php7.0-curl
3、重启apache
service apache2 restart
10、安装php7.0-mysql 驱动
apt-get install php7.0-mysql
部署php的正确姿势的更多相关文章
- 基于winserver的Apollo配置中心分布式&集群部署实践(正确部署姿势)
基于winserver的Apollo配置中心分布式&集群部署实践(正确部署姿势) 前言 前几天对Apollo配置中心的demo进行一个部署试用,现公司已决定使用,这两天进行分布式部署的时候 ...
- 玩转 Ceph 的正确姿势
玩转 Ceph 的正确姿势 本文先介绍 Ceph, 然后会聊到一些正确使用 Ceph 的姿势:在集群规模小的时候,Ceph 怎么玩都没问题:但集群大了(到PB级别),这些准则可是保证集群健康运行的不二 ...
- Redis实现分布式锁的正确姿势
分布式锁一般有三种实现方式:1. 数据库乐观锁:2. 基于Redis的分布式锁:3. 基于ZooKeeper的分布式锁.本篇博客将介绍第二种方式,基于Redis实现分布式锁.虽然网上已经有各种介绍Re ...
- Golang错误和异常处理的正确姿势
Golang错误和异常处理的正确姿势 错误和异常是两个不同的概念,非常容易混淆.很多程序员习惯将一切非正常情况都看做错误,而不区分错误和异常,即使程序中可能有异常抛出,也将异常及时捕获并转换成错误.从 ...
- 开发函数计算的正确姿势 —— 使用 Fun Local 本地运行与调试
前言 首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传.函数计算 ...
- 【分布式缓存系列】集群环境下Redis分布式锁的正确姿势
一.前言 在上一篇文章中,已经介绍了基于Redis实现分布式锁的正确姿势,但是上篇文章存在一定的缺陷——它加锁只作用在一个Redis节点上,如果通过sentinel保证高可用,如果master节点由于 ...
- GitHub 热点速览 Vol.18:刷 LeetCode 的正确姿势
作者:HelloGitHub-小鱼干 摘要:找对路子,事半功倍,正如本周 GitHub Trending #刷 LeetCode# 主题想表达的那般,正确的学习姿势方能让人走得更远,走进大厂
- 如何成为一名合格的Apache项目Committer,参与Apache开源贡献的正确姿势
近日,孙金城老师在 "Open Source Promotion Plan - Summer 2020" 开源软件供应链点亮计划做了<如何成为一名合格的Apache项目Com ...
- 判断是否为gif/png图片的正确姿势
判断是否为gif/png图片的正确姿势 1.在能取到图片后缀的前提下 1 2 3 4 5 6 7 8 9 //假设这是一个网络获取的URL NSString *path = @"http:/ ...
随机推荐
- 【其他】【服务器】【4】删除Windows系统中不想要的服务
步骤: 1,开始菜单栏查找“服务”,打开后找到想要删除的服务 2,右键单击想要删除的服务,选择“属性”-“常规”-“服务名称”,记下服务名称(AA) 3,开始菜单栏输入“cmd”打开命令行窗口,输入s ...
- win php安装 oracle11 g
1.下载plsql和oracle11g plsql安装比较简单,就是普通的安装.oracle11 g不用安装, 下面我讲解一下win 64位的系统配置oracle: (1).首先我使用的是warpse ...
- SQLserver如何创建一个表
例如: create table news(news_id int primary key identity(1,1),news_title varchar(50) not null,news_aut ...
- docker容器扫盲
Centos 6.5 安装和使用docker 基于本人一贯的习惯,关于“某某某是什么”这样的问题,请百度吧,会有更专业的人士,会比我说的更详细更深,这里我只给出本人亲历的安装和使用过程. 1.安装 先 ...
- Linux下zoopkeeper的安装和启动
Linux下zoopkeeper的安装和启动 1.什么是zookeeper ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoo ...
- NOI1995石子合并&多种石子合并
题目描述 在一个圆形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆,并将新的一堆的石子数,记为该次合并的得分. 试设计出1个算法,计算出将N堆石子合并成1 ...
- SpringBoot鸡汤(注解集合二)
1.@NotNull :属性值不为空 2.@Profiles @Configuration @Profile("production") public class Producti ...
- forget sus,syn sym semi word out~s
1★ sus 在~下面 2★ syn 3★ sym 共同 4★ semi 半
- memory prefix mini mono multi out _m 5
1● mini 小 迷你 2● mono 单一 ,单 3● multi 多
- nyoj 0269 VF(dp)
nyoj 0269 VF 意思大致为从1-10^9数中找到位数和为s的个数 分析:利用动态规划思想,一位一位的考虑,和s的范围为1-81 状态定义:dp[i][j] = 当前所有i位数的和为j的个数 ...