Configuration serveur pour l'URL Rewriting?

WRInaute accro
J'essaye une simple redirection dans un fichier HTACCESS
RewriteEngine On
RewriteRule ^nouvelle\.php$ ancienne.htm [R=301,L]

Serveur dédié OVH, distributon Gentoo Linux

J'ai déjà essaé /ancienne.htm comme pour les OVH aussi, idem. Pas de redirection et redirect permanent donne à tous les coups une erreur 500

Déjà, est ce que c'est correct ?

En deuxième, me semblait que le Rewriting était activé par défaut sur les serveurs, un fichier de configuration à modifier?

Si quelqu'un a une solution vite fait ... Ca fait deux heures que je m'amuse sur ce petit problème.

En dernier, il y a normalement un backup automatique sur le serveur mais jamais trouvé comment ca fonctionne (et les aides en ligne d'OVH :roll: ). Si quelqu'un a une piste .
Merci d'avance.
 
Nouveau WRInaute
Bonjour sur un serveur dédié
j'ai configuré ma redirection de la manière suivante (sur plusieurs sites)
Redirect permanent / http://www.monsite.com/
Redirect 301 / http://www.monsite.com/
RedirectPermanent / http://www.monsite.com/
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.monsite.com [NC]
RewriteRule (.*) http://www.monsite/$1 [QSA,R=301,L]

Quand à la réécriture des url :


# check for images and skip all the other rules for performance reasons only
RewriteRule ^.*\.gif|\.jpg|\.png|\.css|\.php$ - [L]

# reformats for product_info.html pages
RewriteRule ^m([0-9]+_?[0-9]*)/?(.*)/p([0-9]+_?[0-9]*)/(.*)/product_info\.html$ product_info.php?manufacturers_id=$1&products_id=$3 [QSA,L]
RewriteRule ^p([0-9]+_?[0-9]*)/(.*)/product_info\.html$ product_info.php?products_id=$1 [QSA,L]
RewriteRule ^(.*)/c([^/]*)/p([0-9]+_?[0-9]*)/(.*)/product_info\.html$ product_info.php?cPath=$2&products_id=$3 [QSA,L]

# reformat for index.html pages
RewriteRule ^m([0-9]+_?[0-9]*)/?(.*)/p([0-9]+_?[0-9]*)/(.*)/index\.html$ index.php?manufacturers_id=$1&products_id=$3 [QSA,L]
RewriteRule ^m([0-9]+_?[0-9]*)/(.*)/index\.html$ index.php?manufacturers_id=$1 [QSA,L]
RewriteRule ^(.*)/c([^/]*)/p([0-9]+_?[0-9]*)/(.*)/index\.html$ index.php?cPath=$2&products_id=$3 [QSA,L]
RewriteRule ^(.*)/c([^/]*)/index\.html$ index.php?cPath=$2 [QSA,L]

# reformat for information.html pages
RewriteRule ^i([0-9]+_?[0-9]*)/(.*)/information\.html$ information.php?info_id=$1 [QSA,L]

# reformat for pages.html pages
RewriteRule ^p([0-9]+_?[0-9]*)/(.*)/pages\.html$ pages.php?pID=$1 [QSA,L]
RewriteRule ^(.*)/c([^/]*)/p([0-9]+_?[0-9]*)/(.*)/pages\.html$ pages.php?cID=$2&pID=$3 [QSA,L]
RewriteRule ^(.*)/c([^/]*)/pages\.html$ pages.php?cID=$2 [QSA,L]

# reformat for articles.html pages
RewriteRule ^(.*)/t([^/]*)/a([0-9]+_?[0-9]*)/(.*)/articles\.html$ articles.php?tPath=$2&articles_id=$3 [QSA,L]
RewriteRule ^(.*)/t([^/]*)/articles\.html$ articles.php?tPath=$2 [QSA,L]

# reformat for article_info.html pages
RewriteRule ^a([0-9]+_?[0-9]*)/(.*)/article_info\.html$ article_info.php?articles_id=$1 [QSA,L]
RewriteRule ^(.*)/t([^/]*)/article_info\.html$ article_info.php?tPath=$2 [QSA,L]

# reformats for product_reviews.html pages
RewriteRule ^p([0-9]+_?[0-9]*)/(.*)/product_reviews\.html$ product_reviews.php?products_id=$1 [QSA,L]
RewriteRule ^(.*)/c([^/]*)/p([0-9]+_?[0-9]*)/(.*)/product_reviews\.html$ product_reviews.php?products_id=$3 [QSA,L]

# reformats for product_reviews_info.html pages
RewriteRule ^p([0-9]+_?[0-9]*)/(.*)/review([0-9]+_?[0-9]*)/product_reviews_info\.html$ product_reviews_info.php?products_id=$1&reviews_id=$3 [QSA,L]

# catch all in case other rules did not match
RewriteRule ^(product_info|index|information|pages|articles|article_info|product_reviews|product_reviews_info)\.html$ $1.php [QSA,L]

# Rewrite End

et tout fonction parfaitement
à Plus
 
WRInaute impliqué
Tu es sur que c'est cette ligne qui provoque l'erreur 500,pas d'autre instruction dans le hgtacces, (option followsimlinks par exemple) ?

sinon, tu peux regarder mon p'tit article, j'y explique comment "activer le Rewriting sur un serveur Linux avec Apache2" (voir la partie "Activation du module" et le premier commentaire)

j'espère que ça t'aidera :?
 
WRInaute impliqué
Dans la config d'apache il faut mettre plusisuers choses, entre autre AlloOverride All pour pouvor utiliser des .htaccess.

Par exemple, tu peux mettre ce qui suit dans le fichier httpd.conf:

Code:
#
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "/root-directory-for-web-site">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.2/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks MultiViews

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   Options FileInfo AuthConfig Limit
    #
    AllowOverride All

    #
    # Controls who can get stuff from this server.
    #
    Order allow,deny
    Allow from all

</Directory>
 
Discussions similaires
Haut