基礎版服務器部署Laravel項目

說明

  1. 部署Laravel項目php

  2. 從如今開始 莫等閒、html

服務器

  1. 能夠嘗試使用vultr購買服務器mysql

  2. 操做系統能夠選擇Ubuntu 14.04 x64nginx

  3. 添加ssh key 或者密碼登陸git

  4. Ubuntu系統登入服務器可經過lsb_release -a查看版本信息github

apt-get

  1. apt-get updatesql

  2. 安裝系統語言包 sudo apt-get install -y language-pack-en-basejson

  3. 設置語言 locale-gen en_US.UTF-8vim

  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-nginxcat 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便可

相關文章
相關標籤/搜索