Comment écrire la redirection 301 du sous-répertoire nginx
ringa_lee
ringa_lee 2017-06-06 09:54:36
0
2
998

J'ai récemment rencontré un tel problème concernant le site Web.
La page d'adresse du PC est similaire à www.abc.com/pc/123/index.html
L'adresse de fin M correspondante est m.abc.com/sj/123/index.html
123 Ce répertoire n'est pas fixe et a d'autres noms. pc et sj sont fixes, il existe donc d'autres correspondances telles que :
PC www.abc.com/pc/222/index.html
M m.abc.com/sj/222/index.html

Vous devez porter un jugement et sauter dans nginx ici. Ma méthode d'écriture originale est la suivante :

location /pc/ {
    if ($http_user_agent ~* "((Android)|(blackberry)|(googlebot-mobile)|(iemobile)|(ipad)|(iphone)|(opera mobile)|(palmos)|(webos)|(UCBrowser)|(wap)|(Opera Mobi))"){
                    return 301 http://m.abc.com/sj$request_uri;
}

Évidemment, l'écriture ci-dessus deviendra un saut correspondant à :
PC www.abc.com/pc/222/index.html
M m.abc.com/sj/pc/222/index.html
Ce n'est pas ce que je vouloir. Comment supprimer le répertoire PC de $request_uri ?
Demandez à Dieu. Comment réécrire ?

ringa_lee
ringa_lee

ringa_lee

répondre à tous(2)
漂亮男人
location ~ /pc/(.*) {
    if ($http_user_agent ~* "((Android)|(blackberry)|(googlebot-mobile)|(iemobile)|(ipad)|(iphone)|(opera mobile)|(palmos)|(webos)|(UCBrowser)|(wap)|(Opera Mobi))"){
                    return 301 http://m.abc.com/sj/;
}
不知道这样行不行
漂亮男人
location ~ ^/pc/(.*) {
    if ($http_user_agent ~* "((Android)|(blackberry)|(googlebot-mobile)|(iemobile)|(ipad)|(iphone)|(opera mobile)|(palmos)|(webos)|(UCBrowser)|(wap)|(Opera Mobi))") {
        return 301 http://m.abc.com/sj/;
    }
}
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal