如何在nginx中对不同的重写规则进行分组?

时间:2017-06-12 11:25:56

标签: nginx url-rewriting

我想为我的一个NGINX配置提供更轻的代码。我只需要在一个中编写以下四行(如果可能!):

@Override
public void onBindViewHolder(final UserListAdapter.ViewHolder holder, final int position) {

//long click for delete the record
holder.itemView.setOnLongClickListener(new View.OnLongClickListener() {
    @Override
    public boolean onLongClick(View view) {

        new AlertDialog.Builder(mContext)

                .setMessage("Are you want to delete?")
                .setPositiveButton("Yes",new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        Log.d(TAG, "onClick: yes");
                    }
                })
                .setNegativeButton("No", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialogInterface, int i) {
                        Log.d(TAG, "onClick: no");
                    }
                })
                .setCancelable(false)
                .show();
        return true;
    }
});

谢谢!

1 个答案:

答案 0 :(得分:0)

使用最小类型,您可以在任何位置块之外使用rewrite语句:

rewrite ^/(en|de)/(contact|quality) https://$server_name/$2 permanent;

如果方案和服务器名称没有更改,则第二个参数可以仅用/$2替换。有关详情,请参阅this document

或者,您可以使用正则表达式location块:

location ~ ^/(en|de)/(contact|quality) {
    return 301 https://$server_name/$2;
}

与上述相同,关于方案和服务器名称。请注意,正则表达式位置块的评估顺序很重要 - 第一个匹配wins的规则。有关详情,请参阅this document