Définition de la règle htaccess pour nginx


0

Salut, im problème lors de la définition de la règle htaccess dans nginx. Mon htaccess est:

Les règles de htaccess sont:

RewriteEngine ON
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]

Je l'ai converti comme ça:

if (!-f $request_filename){
        set $rule_0 1$rule_0;
}
if (!-d $request_filename){
        set $rule_0 2$rule_0;
}
if ($rule_0 = "21"){
        rewrite /.* /index.php/$request_uri last;
}

J'ai lu que si c'est mal pour nginx mais je ne comprends pas ces règles. Mon application que je suis en train de configurer est:

http://products.cogzidel.com/airbnb-clone/

Maintenant, la règle est utile lorsque nous essayons d'accéder à la zone d'administration. Nous y accédons en écrivant / administrateur en url et les règles prennent cela comme entrée pour index.php et nous nous connectons à cela. Mais après avoir appliqué cette règle, je vois dans le journal que l'erreur 404 vient. Permettez-moi de mentionner que nginx vhost recharge correctement après cette règle et que j'ai ajouté cette règle dans la zone du serveur et dans la zone de loxation également mais sans succès


1
N'utilisez pas les outils de conversion en ligne apache-> nginx. Ils produisent une configuration indésirable comme celle de la question. Vous avez seulement besoin try_filesde ce qui est demandé.
AD7six

Réponses:


2

Vous souhaitez consulter les blocs d'emplacement http://nginx.org/en/docs/http/ngx_http_core_module.html#location et les directives try_files http://nginx.org/en/docs/http/ngx_http_core_module.html#try_files

Par exemple, si vous regardez le blog wordpress (un exemple assez complet) http://wiki.nginx.org/WordPress, vous verrez ceci:

 location /wordpress {
    try_files $uri $uri/ /wordpress/index.php?$args;
 }

 location ~ \.php$ {
    fastcgi_split_path_info ^(/wordpress)(/.*)$;
 }

qui dit "essayez le fichier directement dans / wordpress, sinon transmettez-le à index.php pour le traitement".


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.