友声网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
开启左侧

nginx支持.htaccess文件实现伪静态(url重写),解决不同网站静态规则重复问题

[复制链接]
admin 发表于 2017-9-22 16:50 | 显示全部楼层 |阅读模式
利用apache伪静态规则重写lighttpd伪静态规则的方法 文中提到lighttpd伪静态规则不可以重复
假如您的规则最后如下:
  1. url.rewrite = (
  2. #zblog规则
  3. "^(.*)/read/(.*).html$"=>"$1/index.php?id=$1",
  4. #phpwind规则
  5. "^(.*)/read/(.*).html$" => "$1/read.php?tid=$2&page=$3&fpage=$4"
  6. )
复制代码

这样是不可以的

因为重复了if
  1. "^(.*)/read/(.*).html$"
复制代码
所以会导致服务器无法重启
在nginx服务器上也是会遇到类似问题的。
您购买独立主机如果是nginx服务器,您可能不止开一个站,多个站的伪静态规则未必不会冲突。
所以在欢迎您继续收看友声网卡卡北的原创“软文”同时,也请您继续看下去,说不定能用上。
使用phpStudy套件,php-fastcgi模式下,nginx添加虚拟主机(多站点)配置 一文中讲道,在nginx下如何添加多站点。
那还是用此文中的phpstudy套件进行演示:
以链接:http://hi.ys166.com/read-573.html



代码下载:
游客,如果您要查看本帖隐藏内容请回复

分别在这两个站点中的
root   "D:/phpStudy/WWW";

root   "D:/phpStudy/WWW2";

下分别添加:
include D:/phpStudy/WWW/.htaccess;

include D:/phpStudy/WWW2/.htaccess;

同时在每个站点下添加:
location ~ /.ht {
            deny all;
        }
位置没有太大要求,我为了好截图,添加的比较靠上,这段代码就是过滤.ht开头的文件,防止.htaccess文件被下载。

全部改完后,保存重启。
改后如图:





效果演示:
127.0.0.1为phpwind9.0.1
127.0.0.2为discuz x3.3
这两个论坛程序默认规则是有重复的。分开写后就不会出现问题了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

RSS|无图版|手机版|友声网 ( 鲁ICP备15020090号-1 )|网站地图 | | 点击这里给我发消息 |

GMT+8, 2024-11-22 01:12 , Processed in 0.051461 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X

© ys166.com

快速回复 返回顶部 返回列表