1. 程式人生 > >PHP+Nginx常用配置檔案(Laravel ThinkPHP5)

PHP+Nginx常用配置檔案(Laravel ThinkPHP5)

Laravel

server {
    listen       80; # 埠,一般http的是80
    server_name  we.smallzhou.cn; # 一般是域名,本機就是localhost
    index index.php index.html;  # 預設可以訪問的頁面,按照寫入的先後順序去尋找
    root  /home/ubuntu/JasonHome/public; # 專案根目錄

    # 防止訪問版本控制內容
    location ~ .*.(svn|git|cvs) {
        deny all;
    }

    # 此處不是必須的,需要時候配置
location / { # Laravel 5.4 Url 重寫 try_files $uri $uri/ /index.php?$query_string; } # 下面是所有關於 PHP 的請求都轉給 php-fpm 去處理 location ~ \.php { # 注意: unix sock 和 ip ,兩種方式只能選擇一種 # 基於unix sock 訪問,Ubuntu Apt 方式安裝的PHP預設是以sock方式啟動 # fastcgi_pass unix:/run/php/php7.0-fpm.sock;
# 基於IP訪問 fastcgi_pass 127.0.0.1:9000; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name
; include fastcgi_params; } fastcgi_intercept_errors on; # 日誌儲存目錄,一般按照專案單獨儲存, 開發環境可以關閉 #access_log logs/localhost_access.log access; access_log off; }

ThinkPHP5

server {
    listen       443; # 埠,一般http的是80
    server_name  tp5.smallzhou.cn; # 一般是域名,本機就是localhost
    ssl on;
    ssl_certificate /usr/local/nginx/conf/conf.d/cert/1_tp5.smallzhou.cn_bundle.crt;
    ssl_certificate_key /usr/local/nginx/conf/conf.d/cert/2_tp5.smallzhou.cn.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照這個協議配置
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照這個套件配置
    ssl_prefer_server_ciphers on;

    index index.php index.html;  # 預設可以訪問的頁面,按照寫入的先後順序去尋找
    root  /home/ubuntu/Tp5AndSmallActionShop/public; # 專案根目錄

    # 防止訪問版本控制內容
    location ~ .*.(svn|git|cvs) {
        deny all;
    }

    # 此處不是必須的,需要時候配置
    location /{ 
      if (!-e $request_filename) {
        rewrite  ^(.*)$  /index.php?s=/$1  last;
      }
    }

    # 下面是所有關於 PHP 的請求都轉給 php-fpm 去處理
    location ~ \.php {

        # 注意: unix sock 和 ip ,兩種方式只能選擇一種

        # 基於unix sock 訪問,Ubuntu Apt 方式安裝的PHP預設是以sock方式啟動
        # fastcgi_pass    unix:/run/php/php7.0-fpm.sock;

        # 基於IP訪問
        fastcgi_pass    127.0.0.1:9000;

        fastcgi_split_path_info ^(.+\.php)(.*)$;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include         fastcgi_params;
    }

    fastcgi_intercept_errors on;
    # 日誌儲存目錄,一般按照專案單獨儲存, 開發環境可以關閉
    #access_log  logs/localhost_access.log access; 
    access_log off;
}