ThinkPHP5 + nginx配置(index.php無法訪問404)
下載ThinkPHP5後,在nginx下預設無法訪問index.php,
假如檔案系統路徑是/home/www/
建立專案php5後歡迎頁訪問路徑是:
http://xxxxx/home/www/php5/public/
上面連結可以訪問,但是index.php以及包含引數的請求均會訪問失敗,返回404錯誤.
配置php.ini
vim /usr/local/php/lib/php.ini (根據你的安裝路徑xxx/php/lib/php.ini )
php.ini中的配置引數cgi.fix_pathinfo = 1
接下來進入nginx的配置:
1 找到server裡的location ~ .php$ { ...}
server {
.
location ~ \.php$ { ...}
.
}
修改為:
set $root /home/www/php5/public;
location ~ \.php($|/) {
root $root;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
修改解釋:
1: 宣告變數$root, 設定根目錄:/home/www/php5/public (直接指向public)
2: 修改方法
修改前:
location ~ \.php$ : 只允許.php結尾的請求.所以帶引數會失敗
修改後:
location ~ \.php($|/) : 允許.php及帶引數的請求
隱藏index.php:
也是找到server裡的location / { { ...}
修改前:
location / {
root $root;
index index.html index.php index.htm;
}
修改後:(新增try_files uri/ /index.php?$query_string; )
location / {
root $root;
index index.html index.php index.htm;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=/$1 last;
break;
}
}
配置後出現訪問資原始檔報錯模組不存在錯誤,這裡只需新增對靜態資原始檔的特殊處理即可:
location ~ .*\.(css|js|gif|jpg|jpeg|png|bmp|swf)$ {
root $root;
expires 30d;
}
相關文章
- nginx去掉index.php配置NginxIndexPHP
- nginx配置 vue打包後的專案 解決重新整理頁面404問題|nginx配置多端訪問NginxVue
- nginx 代理eureka後css/js/fonts無法訪問NginxCSSJS
- windows系統配置nginx環境執行pbootcms訪問首頁直接404的問題WindowsNginxboot
- 由Nginx的DNS快取導致的訪問404NginxDNS快取
- Nginx 配置訪問 swagger 頁面NginxSwagger
- nginx配置https協議訪問NginxHTTP協議
- nginx 專案配置 https 訪問NginxHTTP
- github無法訪問Github
- nginx配置kibana訪問使用者名稱和密碼認證、及無認證訪問配置Nginx密碼
- fastadmin 偽靜態nginx 無法訪問後端的情況ASTNginx後端
- Nginx配置VUE專案Https訪問NginxVueHTTP
- 如何用nginx配置https加密訪問?NginxHTTP加密
- idea 訪問 jsp 404問題IdeaJS
- Linux配置靜態IP解決無法訪問網路問題Linux
- git hub 無法訪問 訪問速度慢Git
- 本地站點無法訪問
- laravel-admin 無法訪問Laravel
- 訪問github出現無法訪問此網站Github網站
- 【linux】【docker】Docker預設網段配置導致無法訪問LinuxDocker
- ThinkPHP 訪問路徑隱藏 index.php 問題PHPIndex
- GitLab修改配置後nginx無法啟動GitlabNginx
- wordress小程式圖片訪問出現404問題解決辦法
- tp5 Nginx隱藏index.php的配置方法NginxIndexPHP
- 寶塔皮膚修改埠號,無法訪問_寶塔修改埠後無法訪問
- nginx配置ssl實現https訪問 小白文NginxHTTP
- springmvc寫了方法無法訪問SpringMVC
- 無法正常訪問伺服器伺服器
- 解決 Windows 無法訪問共享Windows
- [解決問題] Vagrant nginx 站點配置問題(ThinkPHP HTML 無法調跳轉)NginxPHPHTML
- 配置nginx解決vue路由history模式下重新整理404問題NginxVue路由模式
- Vue 路由 history 模式踩坑記錄:nginx 配置解決 404 問題Vue路由模式Nginx
- 記錄一次 Nginx 配置 proxy_pass 後 返回404問題Nginx
- nginx配置proxy_pass後斜槓的訪問Nginx
- win10無法訪問指定檔案 win10無法訪問指定裝置路徑Win10
- 防止跨域問題無法訪問網址跨域
- SSH金鑰無法訪問排查思路
- 無法訪問雲主機50070埠