Heim  >  Artikel  >  Backend-Entwicklung  >  NGINX 伪静态的问题 请大家来看看谢谢

NGINX 伪静态的问题 请大家来看看谢谢

WBOY
WBOYOriginal
2016-06-23 14:14:26965Durchsuche

本帖最后由 u010993957 于 2013-06-27 22:12:42 编辑


本地测试  URL  

内容一的连接地址   http://127.0.0.1/ask/?ct=question&askaid=1
内容二的连接地址   http://127.0.0.1/ask/?ct=question&askaid=2
内容三的连接地址   http://127.0.0.1/ask/?ct=question&askaid=3
内容四的连接地址   http://127.0.0.1/ask/?ct=question&askaid=4
内容五的连接地址   http://127.0.0.1/ask/?ct=question&askaid=5


伪静态后这样

   http://127.0.0.1/ask/1.html
   http://127.0.0.1/ask/2.html
   http://127.0.0.1/ask/3.html
   http://127.0.0.1/ask/4.html
   http://127.0.0.1/ask/5.html

如何写NGINX伪静态规则啊   谢谢各位大哥





回复讨论(解决方案)

nginx仅仅是地址重写,能实现访问
 http://127.0.0.1/ask/1.html
重写成
 http://127.0.0.1/ask/?ct=question&askaid=1
以此来执行php脚本


if (!-f $request_filename) {
    rewrite ^([^\.]*)/(\d+)\.html$ $1/?ct=question&askaid=$2 last;
}

nginx仅仅是地址重写,能实现访问
 http://127.0.0.1/ask/1.html
重写成
 http://127.0.0.1/ask/?ct=question&askaid=1
以此来执行php脚本


if (!-f $request_filename) {
    rewrite ^([^\.]*)/(\d+)\.html$ $1/?ct=question&askaid=$2 last;
}






RewriteEngine On
RewriteRule ^index.html$ index.php
RewriteRule ^([0-9]+).html$ ?ct=question&askaid=$1
RewriteRule ^([0-9]+)$ ?ct=browser&tid=$1
RewriteRule ^t([0-9]+)$ ?ct=browser&tid2=$1


大哥上面是 APACHE 伪静态规则 能帮我转  NGINX的吗   非常谢谢你啊

rewrite ^/index.html$ /index.php last;
if (!-f $request_filename) {    
    rewrite ^/([0-9]+).html$ /?ct=question&askaid=$1 last;
    rewrite ^/([0-9]+)$ /?ct=browser&tid=$1 last;
    rewrite ^/t([0-9]+)$ /?ct=browser&tid2=$1 last;
}

rewrite ^/index.html$ /index.php last;
if (!-f $request_filename) {    
    rewrite ^/([0-9]+).html$ /?ct=question&askaid=$1 last;
    rewrite ^/([0-9]+)$ /?ct=browser&tid=$1 last;
    rewrite ^/t([0-9]+)$ /?ct=browser&tid2=$1 last;
}


NGINX配置文件   里增加 

“include /home/lum_safe_files/htaccess_files/.htaccess_ask;”


.htaccess_ask里写入了 “rewrite ^/index.html$ /index.php last;”

我是伪静态  http://127.0.0.1/ask/index.php  成  http://127.0.0.1/ask/index.html

NGINX 也重新启动了  好像还是不行  不知道怎么回事  








rewrite ^/index.html$ /index.php last;
if (!-f $request_filename) {    
    rewrite ^/([0-9]+).html$ /?ct=question&askaid=$1 last;
    rewrite ^/([0-9]+)$ /?ct=browser&tid=$1 last;
    rewrite ^/t([0-9]+)$ /?ct=browser&tid2=$1 last;
}


我的是 二级目录

ask 目录

nginx用的是conf文件 不是.htaccess

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn