如何開啟 nginx 偽靜態(tài)?啟用 multiviews 模塊,允許服務(wù)器根據(jù)擴展名搜索文件。添加偽靜態(tài)規(guī)則,將 .php url 重寫到匹配的 php 文件。確保 web 服務(wù)器進程有權(quán)訪問 php 文件。重啟 nginx 以應(yīng)用更改,從而實現(xiàn) url 映射到文件路徑的功能。
如何開啟 Nginx 偽靜態(tài)
Nginx 偽靜態(tài)是一種配置方法,允許服務(wù)器將 URL 映射到內(nèi)部文件系統(tǒng)路徑,從而實現(xiàn)類似于 Apache .htaccess 中 Rewrite 模塊的功能。開啟 Nginx 偽靜態(tài)很簡單,只需以下步驟:
1. 啟用 MultiViews
首先,在 Nginx 配置文件中啟用 MultiViews 模塊:
server { ... location / { autoindex on; multiviews on; } ... }
登錄后復(fù)制
2. 配置偽靜態(tài)規(guī)則
在相同的位置塊中,添加以下偽靜態(tài)規(guī)則:
location ~ \.php$ { try_files $uri =404; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
登錄后復(fù)制
3. 修改文件權(quán)限
確保 Web 服務(wù)器進程有權(quán)訪問您的 PHP 文件。為此,請使用以下命令:
sudo chmod 644 /var/www/html/*.php
登錄后復(fù)制
4. 重啟 Nginx
最后,重啟 Nginx 以應(yīng)用更改:
sudo systemctl restart <a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/16000.html" target="_blank">nginx</a>
登錄后復(fù)制
原理說明:
通過啟用 MultiViews 模塊,Nginx 允許服務(wù)器根據(jù)請求的文件擴展名搜索多個文件。偽靜態(tài)規(guī)則將所有以 .php 結(jié)尾的 URL 重寫到與之匹配的 PHP 文件。當請求處理時,Nginx 將 PHP 文件傳遞給 FastCGI 處理程序,F(xiàn)astCGI 處理程序然后執(zhí)行 PHP 代碼并生成響應(yīng)。