第一次尝试把本地的项目上线,
 
购买了某云的轻量应用服务器, 镜像为Ubuntu 16.04 
直接运行 apt-get install nginx 出错
 
根据提示运行 apt-get update ,然后再运行安装命令 ,成功
 
然后官网还有这么一段话:
For Debian/Ubuntu, in order to authenticate the nginx repository signature and to eliminate warnings about missing PGP key during installation of the nginx package, it is necessary to add the key used to sign the nginx packages and repository to the apt program keyring. Please download this key from our web site, and add it to the apt program keyring with the following command:
sudo apt-key add nginx_signing.key
下载这个文件并运行这条命令即可,大意是为了认证nginx仓库签名,以及去除在安装nginx包时找不到PGP key的警告。
 
然后运行nginx,就可以访问ip地址看到nginx欢迎界面了!
 

然后是php的配置以及项目的投放。
 
安装PHP-fpm 这是一个PHPFastCGI管理器,
$ sudo apt-get install php7.2-fpm
 
找到配置文件的修改
重启php-fpm
 
修改服务器配置,由于没有域名所以使用ip地址
 
nginx无法开启,查看80端口,发现被进程占用
 
使用命令 killall -9 nginx 关掉所有进程
重启nginx: $ service nginx restart
查看nginx状态:$service nginx status
 
然后就正常了,但访问主页却出现500错误,应该是代码导致。
 
应该还是laravel项目需要配置一番,于是又在网上找寻一番,发现还是漏掉了很多关键的地方,下面的步骤亲测有效!
可惜我选的服务器只有1M带宽,果然很鸡肋,还需要进一步优化。
而且原来已经预装了Apache2,需要卸载,以及要安装composer,运行composer install 等等,还是要多多练习啊!
 
原文来自:
 
 
以下是搬运内容:
 
首先你需要一台阿里云/腾讯云服务器
安装系统选择 ubuntu 16.04
然后通过 ssh 登录远程服务器按下列步骤进行配置:
更新列表
apt-get update
安装语言包
sudo apt-get install -y language-pack-en-base
locale-gen en_US.UTF-8
安装常用软件
sudo apt-get install -y vim git zip unzip
安装PHP7
//请确保每一步没有出错,如果有报错,可尝试多安装几次
 
sudo apt-get install -y software-properties-common
 
sudo LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php
 
sudo apt-get update
 
apt-cache search php7.1
 
sudo apt-get install -y php7.1
 
sudo apt-get install -y php7.1-mysql
 
sudo apt-get install -y php7.1-fpm
 
sudo apt-get install -y php7.1-curl php7.1-xml php7.1-mcrypt php7.1-json php7.1-gd php7.1-mbstring
安装 Mysql
sudo apt-get install -y mysql-server
 
//安装完后需设置密码
安装 Nginx
//安装之前需确认是否安装了apache2,如果已经安装了apache2,需要先停止/卸载 apache2//停止
sudo service apache2 stop
//卸载
sudo apt-get --purge remove apache2
sudo apt-get --purge remove apache2.2-common
sudo apt-get autoremove
 
//安装 nginx
 
sudo apt-get install -y nginx
配置 PHP7
 
sudo vim /etc/php/7.1/fpm/php.ini
 
//修改 cgi.fix_pathinfo=0
 
sudo vim /etc/php/7.1/fpm/pool.d/www.conf
 
//修改 listen = /var/run/php7.1-fpm.sock
配置 Nginx
sudo vim /etc/nginx/sites-available/default
 
//修改如下,根据自己的项目情况修改对应信息:'laravel-project'替换为你的项目,'server_domain_or_IP' 替换为你的网站域名或IP地址
server {
  listen 80 default_server;
  listen [::]:80 default_server;
 
  root /var/www/laravel-project/public;
 
  index index.php index.html index.htm;
 
  server_name server_domain_or_IP;
 
  location / {
    try_files $uri $uri/ /index.php?$query_string;
  }
 
  location ~ \.php$ {
    try_files $uri /index.php =404;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_pass unix:/var/run/php7.1-fpm.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
  }
}
拉取代码
//建议先将代码上传到云端代码仓库(github, coding)然后再在服务端上拉取
 
cd /var/www
 
git clone 地址
安装 Composer 并使用 Composer 安装代码依赖
访问 composer 官网 获取下面四行代码最新版,直接粘贴执行安装 Composer
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '669656bab3166a7aff8a7506b8cb2d1c292f042046c5a994c43155c0be6190fa0355160742ab2e1c88d40d5be660b410') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
 
//然后移动 composer.phar
mv composer.phar /usr/local/bin/composer
 
//进入项目目录
cd /var/www/laravel-project
 
//执行 composer install
composer install
创建 .env 文件
 
cd /var/www/laravel-project
 
cp .env.example .env
 
vim .env
 
//根据项目实际情况修改 .env 文件
生成 laravel key
cd /var/www/laravel-project
 
php artisan key:generate
创建数据库,执行迁移
//首先登录 mysql 创建一个对应项目的数据库,名字应该和 .env 文件中的一致
 
cd /var/www/laravel-project
 
php artisan migrate
修改权限
sudo chown -R www-data:www-data /var/www
 
sudo chmod -R 777 /var/www/laravel-project/storage
重启 Nginx 和 PHP7 fpm
service nginx restart
 
service php7.1-fpm restart
搞定!
 
 
 

Laravel项目部署上线(阿里云 Ubuntu 16.04)的更多相关文章

  1. 阿里云ubuntu 16.04搭建odoo11服务器

    ubuntu 16.04 具体如何搭建odoo11网站的具体步骤可以参考这一篇文章 按上面的文章配置环境后,自己网站的启动具体步骤如下: 1.登录阿里云 [远程连接],进入命令行界面1 2.cd到目录 ...

  2. 阿里云ubuntu 16.04 搭建pptpd 第二版

    前言:1.我常用的服务器在国内,但我又有某方面的需求,所以想要搭建一个pptpd的服务器    2.但我又不常用,所以感觉阿里云包年包月的不划算,所以准备采用阿里云按量付费的实例来搭建pptpd,并形 ...

  3. Java Web项目部署到阿里云服务器(ECS)

    本篇随笔只是记录博主第一次将自己的Java项目部署到阿里云服务器的大致过程,具体细节还请参考别的博文. 一.项目介绍 我做的项目是利用maven项目构建工具进行搭建基于SSM框架的代码共享管理系统,主 ...

  4. javaWeb项目部署到阿里云服务器步骤

    记录web项目部署到阿里云服务器步骤 (使用 web项目.阿里云服务器.Xftp.Xshell),敬请参考和指正 1.将要部署的项目打包成WAR文件格式,可以在MyEclipse.Eclipse都可以 ...

  5. flask项目部署到阿里云 ubuntu16.04

    title: flask项目部署到阿里云 ubuntu16.04 date: 2018.3.6 项目地址: 我的博客 部署思路参考: Flask Web开发>的个人部署版本,包含学习笔记. 开始 ...

  6. javaWeb项目部署到阿里云服务器步骤 完整版

    记录web项目部署到阿里云服务器步骤 (使用 web项目.阿里云服务器.Xftp.Xshell),敬请参考和指正 1.将要部署的项目打包成WAR文件格式,可以在MyEclipse.Eclipse都可以 ...

  7. 在阿里云Ubuntu 14.04 Linux服务器上安装docker

    参考 How To Install and Use Docker: Getting Started 这篇最靠谱的文档在阿里云 Ubuntu  14.04 服务器上成功安装 docker . ---- ...

  8. 将javaweb项目部署到阿里云服务器

    主要步骤:1. 购买阿里云服务器2. 远程连接3. 在云服务器上配javaweb环境:jdk,tomcat,MySQL4. 将项目的war文件放到Tomcat下关于云服务器ECS:如果还想在买服务器之 ...

  9. Django项目部署到阿里云服务器无法发送邮件,发送邮件超时问题解决

    前言 今天, 博主将写了好久的一个Django小项目尝试在阿里云部署上线,由于项目中需要发送邮件,博主调用了163邮箱接口,在本地测试邮件功能正常,可是上线后,邮件功能一直超时崩溃.在百度一番查资料后 ...

随机推荐

  1. kafka全部数据清空与某一topic数据清空

    1. Kafka全部数据清空 kafka全部数据清空的步骤为: 停止每台机器上的kafka: 删除kafka存储目录(server.properties文件log.dirs配置,默认为“/tmp/ka ...

  2. 第一节: 结合EF的本地缓存属性来介绍【EF增删改操作】的几种形式

    一. 背景 说起EF的增删改操作,相信很多人都会说,有两种方式:① 通过方法操作  和  ② 通过状态控制. 相信你在使用EF进行删除或修改操作的时候,可能会遇到以下错误:“ The object c ...

  3. 两个Html页面之间值得传递

    传值的页面:<a href='stockProductInfo.html?prdId="+v.prdID+"' target='_blank'></html> ...

  4. RabbitMQ环境搭建

    消息 RabbitMQ  1.安装erlang环境 2.安装rabbitmq 3.参考资料 AMQP协议,可以跨语言通信 Advance Message Queuing Protocol Rabbit ...

  5. 对OAuth协议的认识

    一. OAuth是什么 OAuth 是Open Authorization的简写.OAuth 协议为用户资源的授权提供了一个安全的.开放而又简易的标准. 通俗地说,就是当我们想把自己系统的某些功能暴露 ...

  6. C语言malloc函数为一维,二维,三维数组分配空间

    c语言允许建立内存动态分配区域,以存放一些临时用的数据,这些数据不必在程序的声明部分定义,也不必等到函数结束时才释放,而是需要时随时开辟,不需要时随时释放,这些数据存储在堆区.可以根据需要,向系统申请 ...

  7. Datagrip连接Mysql 和Hive

    连接Mysql file->data source general 填写host,port,user,password, 下载驱动,先别test connection 在ssh中填写host,p ...

  8. Sqlserver 锁(转)

    转载 http://www.cnblogs.com/zhouqianhua/archive/2011/04/15/2017049.html 总结:    锁的种类: 共享锁\排它锁\更新锁\意向锁\计 ...

  9. centos7安装elasticsearch

    [root@aaron tools]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.5.1.zi ...

  10. 在Windows中使用libpq连接postgresql数据库

    1.首先,编译libpq 下载源码,进入src目录,interface/libpq/win32.mak 文件中,mt命令那些行删掉. 执行 nmake /f win32.mak 在interface/ ...