Nginx配置PHP的Yii與CakePHP框架的rewrite規(guī)則示例
Yii的Nginx rewrite
如下為nginx yii的重寫
server { set $host_path "/data/site/www.dbjr.com.cn"; access_log /data/logs/nginx/www.dbjr.com.cn_access.log main; server_name jb51.net www.dbjr.com.cn; root $host_path/htdocs; set $yii_bootstrap "index.php"; # define charset charset utf-8; location / { index index.html $yii_bootstrap; try_files $uri $uri/ /$yii_bootstrap?$args; } # deny access to protected directories location ~ ^/(protected|framework|themes/w+/views) { deny all; } #avoid processing of calls to unexisting static files by yii location ~ .(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ { try_files $uri =404; } # prevent nginx from serving dotfiles (.htaccess, .svn, .git, etc.) location ~ /. { deny all; access_log off; log_not_found off; } # php-fpm configuration using socket location ~ .php { fastcgi_split_path_info ^(.+.php)(.*)$; #yii catches the calls to unexising PHP files set $fsn /$yii_bootstrap; if (-f $document_root$fastcgi_script_name){ set $fsn $fastcgi_script_name; } fastcgi_pass unix:/tmp/php5-fpm.sock; # 改成你對應(yīng)的FastCGI include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fsn; #PATH_INFO and PATH_TRANSLATED can be omitted, but RFC 3875 specifies them for CGI fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fsn; ## Tweak fastcgi buffers, just in case. fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; } }
配置完了別忘了重啟Nginx。
CakePHP的Nginx重寫規(guī)則
依然簡單粗暴,直接上代碼例子,nginx重寫規(guī)則如下
server { listen 80; server_name www.dbjr.com.cn; root /data/site/www.dbjr.com.cn; index index.php; access_log /data/logs/nginx/www.dbjr.com.cn_accerss.log; error_log /data/logs/nginx/www.dbjr.com.cn_error.log; # main cakephp rewrite rule location / { try_files $uri $uri/ /index.php?$uri&$args; } location ~ .php$ { root /data/site/www.dbjr.com.cn; try_files $uri =404; fastcgi_pass unix:/tmp/php5-fpm.sock; # 改成你對應(yīng)的FastCGI fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_buffer_size 128k; fastcgi_buffers 256 4k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; } }
重啟nginx即可
相關(guān)文章
nginx如何配置同一個端口轉(zhuǎn)發(fā)多個項目
這篇文章主要介紹了nginx如何配置同一個端口轉(zhuǎn)發(fā)多個項目問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01nginx服務(wù)器中access_log日志分析與配置詳解
通過訪問日志,可以知曉用戶的地址,網(wǎng)站的哪些部分最受歡迎,用戶的瀏覽時間,對大多數(shù)用戶用的的瀏覽器做出針對性優(yōu)化。下面這篇文章主要給大家介紹了關(guān)于nginx服務(wù)器中access_log日志分析與配置的相關(guān)資料,需要的朋友可以參考下。2017-12-12Nginx如何配置根據(jù)路徑轉(zhuǎn)發(fā)詳解
Nginx是作為一個反向代理,轉(zhuǎn)發(fā),和負(fù)載均衡的服務(wù)器,也可以用于分布式,下面這篇文章主要給大家介紹了關(guān)于Nginx如何配置根據(jù)路徑轉(zhuǎn)發(fā)的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-07-07Nginx配置實現(xiàn)高效精準(zhǔn)的流量限制策略詳解
限流(Rate?Limitting)是服務(wù)降級的一種方式,通過限制系統(tǒng)的輸入和輸出流量以達(dá)到保護(hù)系統(tǒng)的目的,下面我們就來看看如何通過配置Nginx實現(xiàn)高效精準(zhǔn)的流量限制策略吧2024-02-02Mac中使用Nginx實現(xiàn)80端口轉(zhuǎn)發(fā)8080端口
端口轉(zhuǎn)發(fā)(Port forwarding),有時被叫做隧道,是安全殼(SSH) 為網(wǎng)絡(luò)安全通信使用的一種方法。端口轉(zhuǎn)發(fā)是轉(zhuǎn)發(fā)一個網(wǎng)絡(luò)端口從一個網(wǎng)絡(luò)節(jié)點到另一個網(wǎng)絡(luò)節(jié)點的行為,其使一個外部用戶從外部經(jīng)過一個被激活的NAT路由器到達(dá)一個在私有內(nèi)部IP地址(局域網(wǎng)內(nèi)部)上的一個端口2017-09-09如何使用Nginx和uwsgi在自己的服務(wù)器上部署python的flask項目
Nginx 是一個高性能的 HTTP 和反向代理服務(wù),其特點是占有內(nèi)存少,并發(fā)能力強(qiáng),事實上nginx的并發(fā)能力在同類型的網(wǎng)頁服務(wù)器中表現(xiàn)較好,這篇文章主要介紹了如何使用Nginx和uwsgi在自己的服務(wù)器上部署python的flask項目,需要的朋友可以參考下2023-11-11