Nginx 对 cms 后端的重写规则

2024-04-23

我需要在 nginx 服务器中制定 url 重写规则(服务器块),就像我之前的 apache 服务器一样。
这是 .htaccess 中的代码,我需要将其实现(转换)到我现有的代码中:

RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-/_]+)$ admin/index.php?hotelname=$1&do=$2 [QSA]

RewriteRule ^(([A-Za-z0-9-/]+)+)$ admin/index.php?hotelname=$1 [L]

这段代码位于我的网站中,因为我需要隐藏在登录后文件所在的地址栏文件夹(/admin/)中。当有人已经登录时,地址栏就像www.domain.com/用户名当你点击菜单地址时就像www.domain.com/用户名/page1, www.domain.com/用户名/page2, www.domain.com/用户名/page3。 这就是我需要在nginx中实现的。因为现在是完整的后端,没有功能。当我登录后端时,我被重定向到www.domain.com/用户名但在屏幕上我只能看到文件未找到。仅当我手动添加时才在后端工作www.domain.com/admin/index.php.

这是我的 nginx 实际配置:

server_names_hash_bucket_size  64;

server {
    listen 80;
    server_name example.com;
    return 301 $scheme://www.example.com$request_uri;
}

server {
        listen 80;
        root /usr/share/nginx/www;
        index index.php;
        server_name www.example.com;
        error_page 404 http://www.example.com/404.php;
        autoindex off;



   location / {
        rewrite ^([^\.]*)$ /$1.php;
    }

    location = / {
        rewrite ^ /index.php;
    }


    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
    }

    location ~ /\.ht {
            deny all;
      }
}

当我尝试将我的块更改为:

location / {
        rewrite ^([^\.]*)$ /$1.php;
        rewrite ^/([A-Za-z0-9-]+)/([A-Za-z0-9-/_]+)$ /admin/index.php?hotelname=$1&do=$2;
        rewrite ^/(([A-Za-z0-9-/]+)+)$ /admin/index.php?hotelname=$1 break;
    }

我的每个 css 文件都有错误 500...

如果有任何帮助,我将非常感激! 多谢。


您将其放入您的 / 位置,这意味着您的所有请求在您放到此处之前均不匹配。您必须在位置/之前创建特定于此条目的位置角色

location ^/([A-Za-z0-9-]+)/([A-Za-z0-9-/_]+)$ {
    rewrite ^/([A-Za-z0-9-]+)/([A-Za-z0-9-/_]+)$ /admin/index.php?hotelname=$1&do=$2;
} 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Nginx 对 cms 后端的重写规则 的相关文章

随机推荐

  • 并行调用一系列 Promise,但按顺序解决它们,而不等待其他 Promise 解决

    我有一系列的承诺 我想并行调用 但同步解析 我编写了这段代码来完成所需的任务 但是 我需要创建自己的对象QueryablePromise包裹原生Promise我可以同步检查它的已解决状态 有没有更好的方法来完成这个不需要特殊对象的任务 请注
  • 将信息添加到数据帧的 if 条件

    我需要创建一个包含以下列的数据框 WEB Country Organisation 我从网站中提取这些信息 但是 有些网站的网站上没有任何信息 这导致我在更新数据框时遇到一些问题 不幸的是 该代码一次只能运行一个网站 否则会出现验证码 请参
  • Latex:列表前后的垂直空间

    我无法摆脱列表前后的垂直空间 我有如下代码 begin list setlength itemsep 0pt setlength parskip 0pt setlength parsep 0pt item First item item S
  • 正则表达式匹配引号外的文本等

    1 我想出了这个正则表达式来匹配所有引用的字符串 看起来效果很好 问题是如何匹配不在引号内的文本 不知怎的 逆负负 我阅读了文档并 1 不起作用 嗯 如果第一个正则表达式有效 我将使用它从输入字符串中删除所有带引号的字符串 然后 您将剩下的
  • 如何编写 Linq 表达式来对一组实体调用 OrderBy?

    有人可以解释构建表达式的语法 该表达式将按实体上用户指定的属性进行排序吗 这篇 MSDN 文章对提供帮助有很大帮助 但它涉及一个简单的字符串列表 我的数据集包含我自己的自定义对象 http msdn microsoft com en us
  • C++ 将三个 char* 字符串连接在一起[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 询问代码的问题必须对所解决的问题表现出最低限度的了解 包括尝试的解决方案 为什么不起作用以及预期结果 也可以看看 Stack Overfl
  • 从表单提交获取 JSON 响应

    我不是前端开发人员 并且我花了相当多的时间尝试这样做 希望你们能帮助我 我有一个将文件发送到服务器中的 API 的表单 如下所示
  • 将 R data.frame 转换为 Javascript 数组

    我想将数据框的某些列保存为特定格式 JavaScript 格式 我尝试过使用toJSON from rjson包但这不起作用 我的结果应该是这样的 http leaflet github io Leaflet markercluster e
  • 如何折叠ListView中的所有Group Expander?

    我有一个ListView with a GroupStyle在上面 在风格上我有一个Expander 我想用一个ContextMenu in the ListView一键折叠和展开所有组 我想通过单击扩展器来展开每个组 我怎样才能获得组 然
  • 无法安装 matplotlib

    当我在 64 位 Windows 中安装 matplotlib 时 它需要 numpy 然后我安装了 numpy 并再次安装了 matplotlib 然后它说 numpy 1 7 1 freetype2 found but unknown
  • Perforce:如何删除 p4v 拒绝删除的变更列表?

    使用 perforce 一段时间后 我留下了许多尚未完成的变更列表 为了清理 我想摆脱其中的一部分 所以这就是让事情变得复杂的原因 对于更改的子集 客户端的主机已更改 某些更改包含搁置的文件 更改列表中的文件可能会被删除或移动 当更改列表满
  • iOS——codeSense 中自动合成属性的“添加”方法

    我刚刚创建了一个具有以下属性的 iOS 类 property nonatomic strong NSString foo property nonatomic strong NSObject bar property nonatomic C
  • 如何忽略多容器 Pod 中容器的故障?

    我有一个多容器应用程序 app sidecar 两个容器都应该一直处于活动状态 但 sidecar 并不是那么重要 Sidecar 依赖于外部资源 如果该资源不可用 Sidecar 就会崩溃 它会导致整个吊舱瘫痪 Kubernetes 尝试
  • VirtualBox 是否可以使用 python3 绑定?

    我正在尝试使用 VirtualBox 的 python 3 绑定 但似乎存在损坏的依赖关系 我觉得很奇怪的是 在人们遇到这个问题的四年里 这个问题还没有得到解决 也许我错过了一些明显的东西 众所周知它会发生 我已经通过操作系统包管理器安装了
  • javax.mail.MessagingException:无法连接到 SMTP 主机:<主机名> 端口:25 响应:554

    我正在尝试使用 java mail api 发送邮件 我的 smtp 服务器是 ibm 服务器 我面临这个异常 javax mail MessagingException Could not connect to SMTP host
  • 如何让 Cargo 显示哪些文件导致重建?

    我在用cargo maturin and pytest构建混合 Python Rust 项目 在开发过程中 我经常循环使用命令 cargo test p mypkg release maturin develop release pytho
  • 如何从 fresco(facebook 的 android lib)中排除 arm64-v8a 目录

    正如你所看到的 Fresco有arm64 v8a目录 但我不想要它 我应该在build gradle中写什么 compile com facebook fresco fresco 0 5 3 exclude group com androi
  • Android 开源人脸识别 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 使用Android 人脸识别有哪些开源选项 以下是我在人脸识别库上找到的一些链接 Android s F
  • 我可以通过委托给 EF 中的存储过程来延迟加载导航属性吗?

    我有以下客户类别 public class Customer public long Id get set public virtual ICollection
  • Nginx 对 cms 后端的重写规则

    我需要在 nginx 服务器中制定 url 重写规则 服务器块 就像我之前的 apache 服务器一样 这是 htaccess 中的代码 我需要将其实现 转换 到我现有的代码中 RewriteRule A Za z0 9 A Za z0 9