NGINX 伪静态的问题 请大家来看看谢谢
本地测试 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