基础版服务器部署Laravel项目

说明

  1. 部署Laravel项目

  2. 从现在开始 莫等闲、

服务器

  1. 可以尝试使用vultr购买服务器

  2. 操作系统可以选择Ubuntu 14.04 x64

  3. 添加ssh key 或者密码登录

  4. Ubuntu系统登入服务器可通过lsb_release -a查看版本信息

apt-get

  1. apt-get update

  2. 安装系统语言包 sudo apt-get install -y language-pack-en-base

  3. 设置语言 locale-gen en_US.UTF-8

  4. 安装常用工具 sudo apt-get install -y vim htop git

  5. 安装ppa之前先执行 sudo apt-get install -y software-properties-common

  6. 安装ppa sudo LC_ALL=en_US.UTF-8 add-apt-repository ppa:ondrej/php

  7. 拉取最新的packages sudo apt-get update

  8. 查找php7.1版本的packages apt-cache search php7.1

  9. 安装php7.1 apt-get install -y php7.1

  10. 安装extension:php7.1-mysql apt-get install -y php7.1-mysql

  11. 安装extension:php7.1-fpm apt-get install -y php7.1-fpm

  12. 安装其他extension:php7.1-... apt-get install -y php7.1-curl php7.1-xml php7.1-mcrypt php7.1-json php7.1-gd php7.1-mbstring

  13. 安装Nginx+MySQL sudo apt-get install -y mysql-server-5.6 sudo apt-get install -y nginx

配置lnmp

  1. 打开php配置文件php.ini sudo vi /etc/php/7.1/fpm/php.ini,启用并修改配置项 cgi_fix_pathinfo=0

  2. 打开php-fpm配置文件www.conf sudo vi /etc/php7.1/fpm/pool.d/www.conf,最好修改配置项listen=/var/run/php7.1-fpm.sock

  3. 打开Nginx配置文件default sudo vi /etc/nginx/sites-available/default,修改其root、location、server_name

  4. 创建项目根目录 mkdir /var/www sudo chown www-data:www-data /var/www

  5. 从github上拉取项目全目录,composer安装,composer install, sudo chmod -R 775 storage/ sudo chown -R www-data:www-data /var/www/project

  6. 复制.env文件,修改基本配置

index index.php index.html index.html;

server_name localhost www.example.com;

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

# pass the php script
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;
}
 

域名解析

  1. 修改Nginx配置文件server_name www.domain.com

  2. 使用DNSpod,修改A记录的记录值为服务器公网IP,将两条记录添加到自己注册域名的地方,修改其DNS值。

ssl证书

  1. 推荐Let's Encrypt

  2. 也可以选择使用startssl的免费ssl证书

  3. 使用startssl账号登入,首页选择Validations Wizar验证域名的所有者信息,验证成功后申请免费的证书,可在输入框中申请最多支持五个域名的ssl证书

  4. 通过粘贴命令生成csr文件,第一步设置解密文件的密码,接下来按提示输入CN、Beijing、Beijing、org Inc...

  5. 粘贴生成的csr文件到网站输入框中,提交很快就颁发了证书,下载证书文件夹到本地,找到Nginx.zip 解压得到crt文件上传到远程服务器,于是远程服务器现在应该有三个文件,一个是刚刚上传的证书crt文件,一个是提交申请证书生成的csr文件,一个是提交证书生成的服务器key文件。

  6. 解密服务器key文件,再次进入startssl网站,找到首页Tool Box 中的Decrypt Private Key,输入密码,生成解密后的服务器key

  7. 修改Nginx配置文件,打开配置443ssl的server,修改其ssl_certificate demo.crt ssl_certificate_key demo.key,执行sudo service nginx configtest测试配置文件是否修改ok

  8. 修改Nginx配置文件,打开配置80的server,加入一行return 301 https://domain.com$request_uri使其访问80端口时直接重定向到443。

  9. 检测https网站的安全性可访问-->sslabs,大约两分钟左右得到检测结果报告

  10. 要使自己的网站达到A标准可参考server-configs-nginx,cat server-configs-nginx/h5bp/directive-only/ssl.conf复制其ssl_ciphers、ssl_protocols、ssl_prefer_server_ciphers、keepalive_timeout配置项重新reload conf即可

  11. 或者可以是用Mozilla SSL Configurationn Generator生成标准的ssl conf即可

你可能感兴趣的:(php,nginx,mysql,服务器配置,laravel)