SPIP dans un sous-répertoire, transfert automatique htaccess

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il est en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront tapées http://mondomaine.tld/spip/ soient comprises et interprétées, mais affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles entre le répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à changer dans la base ?

Merci beaucoup de votre aide.

--
****Fin du message end - Signature****
Perline

spip@perline.orghttp://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

hard link linux ?
rien de plus simple
:-)k++

On Thu, 26 Mar 2015 18:39:42 +0100, Perline-Spip <spip@perline.org> wrote:

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il
est en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront tapées
http://mondomaine.tld/spip/ soient comprises et interprétées, mais
affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles entre le
répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à
changer dans la base ?

Merci beaucoup de votre aide.

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.net

Documentation de SPIP : http://www.spip.net/

Irc : de l'aide à toute heure : http://spip.net/irc

Merci de t'intéresser à mon cas (assez difficile par les temps qui courent je reconnais...) :slight_smile:
Teuf teuf... je tousse.
C'est-à-dire ?

Le 26/3/2015 18:52:41, klaus++, dans un message intitulé "Re: [Spip] SPIP dans un sous-répertoire, transfert automatique htaccess" nous a informés :

hard link linux ?
rien de plus simple
:-)k++

On Thu, 26 Mar 2015 18:39:42 +0100, Perline-Spip <spip@perline.org> wrote:

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il
est en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront tapées
http://mondomaine.tld/spip/ soient comprises et interprétées, mais
affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles entre le
répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à
changer dans la base ?

Merci beaucoup de votre aide.

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.net

Documentation de SPIP : http://www.spip.net/

Irc : de l'aide à toute heure : http://spip.net/irc

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

Salut !

On 26/03/2015 18:39, Perline-Spip wrote:

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il est
en indiquant ce répertoire.

avec un site ayant pour domaine MONDOMAINE.TLD et le site dans un
dossier spip/, ce fichier .htaccess à la racine fonctionne pour moi :

---------------------------------

RewriteEngine on

RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^(www.)?MONDOMAINE.TLD$
RewriteCond %{REQUEST_URI} !^/spip/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /spip/$1

RewriteCond %{HTTP_HOST} ^(www.)?MONDOMAINE.TLD
RewriteRule ^(/)?$ spip/index.php [L]

---------------------------------

a+ !

victor

Bonjour,

Moi je déménagerai le site à la racine (donc au niveau au dessus de spip) et ensuite je ferai une règle de ré-écriture qui redirige tous les liens avec spip vers sans spip. Genre:

RedirectMatch 301 ^/spip/$ http://www.domain.tld/

Avec aussi "RewriteBase /" et ne pas publier de chager l'adresse dans l'admin, peut-être nettoyer la table des url si ré-écriture activée ...

A tester et sans garantie du gouvernement ...

Je pense pas que le RewriteBase /spip/ fasse disparaitre "/spip/", ça indique juste au contraire que la ré-écriture se fait à partir de là.

Le 26/03/2015 18:39, Perline-Spip a écrit :

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il est
en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront tapées
http://mondomaine.tld/spip/ soient comprises et interprétées, mais
affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles entre le
répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à
changer dans la base ?

Merci beaucoup de votre aide.

--
Pierre

Merci !
Tu changes le .htacces pour lui dire dans quel répertoire il est avec ça ou pas ?

Le 26/3/2015 20:15:27, Victor / tokiop, dans un message intitulé "Re: [Spip] SPIP dans un sous-répertoire, transfert automatique htaccess" nous a informés :

Salut !

On 26/03/2015 18:39, Perline-Spip wrote:

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il est
en indiquant ce répertoire.

avec un site ayant pour domaine MONDOMAINE.TLD et le site dans un
dossier spip/, ce fichier .htaccess à la racine fonctionne pour moi :

---------------------------------

RewriteEngine on

RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^(www.)?MONDOMAINE.TLD$
RewriteCond %{REQUEST_URI} !^/spip/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /spip/$1

RewriteCond %{HTTP_HOST} ^(www.)?MONDOMAINE.TLD
RewriteRule ^(/)?$ spip/index.php [L]

---------------------------------

a+ !

victor
_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.net

Documentation de SPIP : http://www.spip.net/

Irc : de l'aide à toute heure : http://spip.net/irc

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

Merci !
L'idée est de ne rien déménager.
Mais bon, si je déménage, donc, c'est le .htaccess au niveau de la racine, où est SPIP, qui va accrocher les appels vesrs / ?
Et je ne comprends pas :
"Avec aussi "RewriteBase /" "
et pas plus
"peut-être nettoyer la table des url si ré-écriture activée".
Désolée, mais comme on ne peut faire ça qu'en prod, je voudrais être sûre que je comprends bien.
Merci.

Le 26/3/2015 20:17:52, Zapilou, dans un message intitulé "Re: [Spip] SPIP dans un sous-répertoire, transfert automatique htaccess" nous a informés :

Bonjour,

Moi je déménagerai le site à la racine (donc au niveau au dessus de spip) et ensuite je ferai une règle de ré-écriture
qui redirige tous les liens avec spip vers sans spip. Genre:

RedirectMatch 301 ^/spip/$ http://www.domain.tld/

Avec aussi "RewriteBase /" et ne pas publier de chager l'adresse dans l'admin, peut-être nettoyer la table des url si
ré-écriture activée ...

A tester et sans garantie du gouvernement ...

Je pense pas que le RewriteBase /spip/ fasse disparaitre "/spip/", ça indique juste au contraire que la ré-écriture se
fait à partir de là.

Le 26/03/2015 18:39, Perline-Spip a écrit :

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il est
en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront tapées
http://mondomaine.tld/spip/ soient comprises et interprétées, mais
affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles entre le
répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à
changer dans la base ?

Merci beaucoup de votre aide.

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

On 26/03/2015 20:39, Perline-Spip wrote:

Merci !
Tu changes le .htacces pour lui dire dans quel répertoire il est avec ça
ou pas ?

Non, pas celui de Spip. Celui-ci, qui est dans spip/.htaccess , garde la
valeur par defaut : RewriteBase /

Je ne comprends pas comment une url mondomaine/spip/ va attraper le .htaccess à la racine de mondomaine.
Merci.

Le 26/3/2015 20:52:27, Victor / tokiop, dans un message intitulé "Re: [Spip] SPIP dans un sous-répertoire, transfert automatique htaccess" nous a informés :

On 26/03/2015 20:39, Perline-Spip wrote:

Merci !
Tu changes le .htacces pour lui dire dans quel répertoire il est avec ça
ou pas ?

Non, pas celui de Spip. Celui-ci, qui est dans spip/.htaccess , garde la
valeur par defaut : RewriteBase /

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

Bonjour,

Le 26/03/2015 20:42, Perline-Spip a écrit :

Merci !
L'idée est de ne rien déménager.
Mais bon, si je déménage, donc, c'est le .htaccess au niveau de la
racine, où est SPIP, qui va accrocher les appels vesrs / ?

Quand je dis déménager, c'est déménager tous les fichiers de spip dans le répertoire racine et ensuite supprimer le sous-répertoire spip.

Et je ne comprends pas :
"Avec aussi "RewriteBase /" "

Il faut que dans le .htaccess, qui se trouve désormais à la racine, on ait "RewriteBase /", pas "RewriteBase /spip/".

Et également le "RedirectMatch 301 ^/spip/$ http://www.domain.tld/&quot; qui devrait peut-être s'écrire "RedirectMatch 301 ^/spip/(.*)$ https://www.domain.tld/$1&quot; si on veut aussi récupérer la suite de l'url ...
Je viens de tester, ça a l’air de marcher, on peut même supprimer le dossier spip après.

et pas plus
"peut-être nettoyer la table des url si ré-écriture activée".

Si la ré-écriture était activée avant, il faut peut-être nettoyer la table spip_url (de mémoire). Si on est dans une v3 on peut utiliser la gestion avancée des urls pour regénérer toutes les urls.

Désolée, mais comme on ne peut faire ça qu'en prod, je voudrais être
sûre que je comprends bien.
Merci.

Je suggère donc mega sauvegarde base + squelettes + config. Noter que plutôt que "déplacer" vous pourriez "copier" vers la racine et ensuite renommer le dossier "spip" en "toto" pour tester. Si ça ne marche pas, supprimer tout ce qui est à la racine sauf "toto" et le renommer en "spip" ...
Tout ce que je viens de dire, je viens de le tester sur une 3.0.17 à jour (pas le déplacement mais le dossier spip et le htaccess). Quand on déplace tout le site, on peut avoir des petits problèmes de plugins à réactiver ou de cache à vraiment bien vider, mais moi je fais ça assez souvent avec des sites en dev dans un sous-dossier "spip" ou autre que je déplace à la racine à la mise en prod. Par contre effectivement j'ai pas d'urls en dur dans le contenu ...

Si d'autres ont un avis, ...

Le 26/3/2015 20:17:52, Zapilou, dans un message intitulé "Re: [Spip]
SPIP dans un sous-répertoire, transfert automatique htaccess" nous a
informés :

Bonjour,

Moi je déménagerai le site à la racine (donc au niveau au dessus de
spip) et ensuite je ferai une règle de ré-écriture
qui redirige tous les liens avec spip vers sans spip. Genre:

RedirectMatch 301 ^/spip/$ http://www.domain.tld/

Avec aussi "RewriteBase /" et ne pas publier de chager l'adresse dans
l'admin, peut-être nettoyer la table des url si
ré-écriture activée ...

A tester et sans garantie du gouvernement ...

Je pense pas que le RewriteBase /spip/ fasse disparaitre "/spip/", ça
indique juste au contraire que la ré-écriture se
fait à partir de là.

Le 26/03/2015 18:39, Perline-Spip a écrit :

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il est
en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront tapées
http://mondomaine.tld/spip/ soient comprises et interprétées, mais
affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles entre le
répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en
clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à
changer dans la base ?

Merci beaucoup de votre aide.

--
Pierre

J'ai parfaitement compris. et je dis que l'idée est de ne rien déménager :slight_smile:
Je vais voir ce qui me semble le mieux.
merci.

Le 26/3/2015 21:21:53, Zapilou, dans un message intitulé "Re: [Spip] SPIP dans un sous-répertoire, transfert automatique htaccess" nous a informés :

Bonjour,

Le 26/03/2015 20:42, Perline-Spip a écrit :

Merci !
L'idée est de ne rien déménager.
Mais bon, si je déménage, donc, c'est le .htaccess au niveau de la
racine, où est SPIP, qui va accrocher les appels vesrs / ?

Quand je dis déménager, c'est déménager tous les fichiers de spip dans le répertoire racine et ensuite supprimer le
sous-répertoire spip.

Et je ne comprends pas :
"Avec aussi "RewriteBase /" "

Il faut que dans le .htaccess, qui se trouve désormais à la racine, on ait "RewriteBase /", pas "RewriteBase /spip/".

Et également le "RedirectMatch 301 ^/spip/$ http://www.domain.tld/&quot; qui devrait peut-être s'écrire "RedirectMatch 301
^/spip/(.*)$ https://www.domain.tld/$1&quot; si on veut aussi récupérer la suite de l'url ...
Je viens de tester, ça a l’air de marcher, on peut même supprimer le dossier spip après.

et pas plus
"peut-être nettoyer la table des url si ré-écriture activée".

Si la ré-écriture était activée avant, il faut peut-être nettoyer la table spip_url (de mémoire). Si on est dans une v3
on peut utiliser la gestion avancée des urls pour regénérer toutes les urls.

Désolée, mais comme on ne peut faire ça qu'en prod, je voudrais être
sûre que je comprends bien.
Merci.

Je suggère donc mega sauvegarde base + squelettes + config. Noter que plutôt que "déplacer" vous pourriez "copier" vers
la racine et ensuite renommer le dossier "spip" en "toto" pour tester. Si ça ne marche pas, supprimer tout ce qui est à
la racine sauf "toto" et le renommer en "spip" ...
Tout ce que je viens de dire, je viens de le tester sur une 3.0.17 à jour (pas le déplacement mais le dossier spip et le
htaccess). Quand on déplace tout le site, on peut avoir des petits problèmes de plugins à réactiver ou de cache à
vraiment bien vider, mais moi je fais ça assez souvent avec des sites en dev dans un sous-dossier "spip" ou autre que je
déplace à la racine à la mise en prod. Par contre effectivement j'ai pas d'urls en dur dans le contenu ...

Si d'autres ont un avis, ...

Le 26/3/2015 20:17:52, Zapilou, dans un message intitulé "Re: [Spip]
SPIP dans un sous-répertoire, transfert automatique htaccess" nous a
informés :

Bonjour,

Moi je déménagerai le site à la racine (donc au niveau au dessus de
spip) et ensuite je ferai une règle de ré-écriture
qui redirige tous les liens avec spip vers sans spip. Genre:

RedirectMatch 301 ^/spip/$ http://www.domain.tld/

Avec aussi "RewriteBase /" et ne pas publier de chager l'adresse dans
l'admin, peut-être nettoyer la table des url si
ré-écriture activée ...

A tester et sans garantie du gouvernement ...

Je pense pas que le RewriteBase /spip/ fasse disparaitre "/spip/", ça
indique juste au contraire que la ré-écriture se
fait à partir de là.

Le 26/03/2015 18:39, Perline-Spip a écrit :

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il est
en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront tapées
http://mondomaine.tld/spip/ soient comprises et interprétées, mais
affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles entre le
répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en
clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à
changer dans la base ?

Merci beaucoup de votre aide.

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

au lieu de te compliquer la vie avec des liens cassés à cause d'un déplacement d'un site de son répertoire /spip/ vers / tu crées un lien dur qui fait que chaque accès à /etc. est identique avec /spip/etc.
Comme ca tous tes /spip/etc. restent inchangés et continuent à marcher.

Ce n'est pas toujours faisable, mais souvent on peut contourner un tas de choses avec cette approche.

cf. Hard link - Wikipedia

:-)k++

On Thu, 26 Mar 2015 19:40:52 +0100, Perline-Spip <spip@perline.org> wrote:

Merci de t'intéresser à mon cas (assez difficile par les temps qui
courent je reconnais...) :slight_smile:
Teuf teuf... je tousse.
C'est-à-dire ?

Le 26/3/2015 18:52:41, klaus++, dans un message intitulé "Re: [Spip]
SPIP dans un sous-répertoire, transfert automatique htaccess" nous a
informés :

hard link linux ?
rien de plus simple
:-)k++

On Thu, 26 Mar 2015 18:39:42 +0100, Perline-Spip <spip@perline.org> wrote:

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il
est en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront tapées
http://mondomaine.tld/spip/ soient comprises et interprétées, mais
affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles entre le
répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à
changer dans la base ?

Merci beaucoup de votre aide.

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.net

Documentation de SPIP : http://www.spip.net/

Irc : de l'aide à toute heure : http://spip.net/irc

Mais justement je ne veux pas changer de répertoire, je veux le garder dans /SPIP.
En revanche je veux que les appels ne fassent plus mention de /SPIP.
Je ne suis pas sûre que je suis claire...

Le 26/3/2015 23:30:11, klaus++, dans un message intitulé "Re: [Spip] SPIP dans un sous-répertoire, transfert automatique htaccess" nous a informés :

au lieu de te compliquer la vie avec des liens cassés à cause d'un déplacement d'un site de son répertoire /spip/ vers /
tu crées un lien dur qui fait que chaque accès à /etc. est identique avec /spip/etc.
Comme ca tous tes /spip/etc. restent inchangés et continuent à marcher.

Ce n'est pas toujours faisable, mais souvent on peut contourner un tas de choses avec cette approche.

cf. Hard link - Wikipedia

:-)k++

On Thu, 26 Mar 2015 19:40:52 +0100, Perline-Spip <spip@perline.org> wrote:

Merci de t'intéresser à mon cas (assez difficile par les temps qui
courent je reconnais...) :slight_smile:
Teuf teuf... je tousse.
C'est-à-dire ?

Le 26/3/2015 18:52:41, klaus++, dans un message intitulé "Re: [Spip]
SPIP dans un sous-répertoire, transfert automatique htaccess" nous a
informés :

hard link linux ?
rien de plus simple
:-)k++

On Thu, 26 Mar 2015 18:39:42 +0100, Perline-Spip <spip@perline.org> wrote:

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il
est en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront tapées
http://mondomaine.tld/spip/ soient comprises et interprétées, mais
affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles entre le
répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à
changer dans la base ?

Merci beaucoup de votre aide.

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.net

Documentation de SPIP : http://www.spip.net/

Irc : de l'aide à toute heure : http://spip.net/irc

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

Slt,

Le 27/03/2015 00:21, Perline-Spip a écrit :

Mais justement je ne veux pas changer de répertoire, je veux le garder
dans /SPIP.
En revanche je veux que les appels ne fassent plus mention de /SPIP.
Je ne suis pas sûre que je suis claire...

Dans ce cas si tu as accès au DNS, (possible chez OVH je pense) tu déclares que le dossier du site n'est pas www mais www/spip, ça règle la non-suppression du dossier spip, tout arrive directement dedans.
Le RewriteBase reste / ...
Il faut supprimer le /spip de l'url du site
Ensuite dans le htaccess une règle de ré-écriture pour supprimer le /spip des urls en dur genre ce que je disais pour la suppression du dossier (on se retrouve dans la même situation avec un /spip en trop):

"RedirectMatch 301 ^/spip/(.*)$ https://www.domain.tld/$1&quot;

A tester aussi sauf que c'est réversible le DNS ...

Le 26/3/2015 23:30:11, klaus++, dans un message intitulé "Re: [Spip]
SPIP dans un sous-répertoire, transfert automatique htaccess" nous a
informés :

au lieu de te compliquer la vie avec des liens cassés à cause d'un
déplacement d'un site de son répertoire /spip/ vers /
tu crées un lien dur qui fait que chaque accès à /etc. est identique
avec /spip/etc.
Comme ca tous tes /spip/etc. restent inchangés et continuent à marcher.

Ce n'est pas toujours faisable, mais souvent on peut contourner un tas
de choses avec cette approche.

cf. Hard link - Wikipedia

:-)k++

On Thu, 26 Mar 2015 19:40:52 +0100, Perline-Spip <spip@perline.org>
wrote:

Merci de t'intéresser à mon cas (assez difficile par les temps qui
courent je reconnais...) :slight_smile:
Teuf teuf... je tousse.
C'est-à-dire ?

Le 26/3/2015 18:52:41, klaus++, dans un message intitulé "Re: [Spip]
SPIP dans un sous-répertoire, transfert automatique htaccess" nous a
informés :

hard link linux ?
rien de plus simple
:-)k++

On Thu, 26 Mar 2015 18:39:42 +0100, Perline-Spip <spip@perline.org>
wrote:

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de
rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il
est en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront tapées
http://mondomaine.tld/spip/ soient comprises et interprétées, mais
affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles entre le
répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en
clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à
changer dans la base ?

Merci beaucoup de votre aide.

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.net

Documentation de SPIP : http://www.spip.net/

Irc : de l'aide à toute heure : http://spip.net/irc

--
Pierre

Bonjour,

Le 27/03/2015 10:15, Perline-Spip a écrit :

Bonjour,
merci de me répondre.
Pourquoi aller dans le DNS alors qu'une option du .htaccess de SPIP
permet de le faire ?
C'est ce que je proposais au début, et ça règle ce problème, oui.

Pour moi si on peut éviter une règle de ré-écriture de plus c'est bien, le DNS c'est direct dans le bon dossier. Par contre je suis pas sûr que le terme DNS soit bon finalement, je veux plutôt dire faire pointer le nom de domaine vers un DocumentRoot différent (répertoire racine). Ici je peux le faire sur OVH et sur Virtualmin.
Il y a aussi des pistes je pense avec des liens symboliques ... de la racine vers le dossier spip par ex ?

tu écris :
"Il faut supprimer le /spip de l'url du site"
Oui, c'est ma question.

Là je parle dans le back-office de spip, ne pas oublier d'enlever le /spip dans Configuration.

"Ensuite dans le htaccess une règle de ré-écriture pour supprimer le
/spip des urls en dur genre ce que je disais pour la suppression du
dossier (on se retrouve dans la même situation avec un /spip en trop)"

  "RedirectMatch 301 ^/spip/(.*)$ https://www.domain.tld/$1&quot;

Cette ligne là je la mets dans un autre .htacces, à la racine, c'est
bien cela ?

Il ne peut y avoir qu'un seul htaccess je pense (par dossier), donc dans le htaccess de spip, par ex dans la zone "réglages personnalisés". Et pour commencer à répondre à la question suivante, on parle du htaccess de spip, il est donc dans le dossier ou se trouve spip c'est à dire dans le dossier spip (puisqu'on ne le supprime pas).

Donc j'ai toujours ma question initiale : comment ce fichier est-il
trouvé par l'appel alors même que l'url appelante est dans /spip.
Comment se fait-il que ça aille chercher dans le dossier racine qui
n'est pas appelé par l'url ?

Sauf erreur de ma part et configuration contraire de Apache, le htaccess est hérité dans les sous-dossiers. Ensuite dans ma méthode DNS, on ne supprime pas le dossier spip (puisque tu ne veux pas), donc le htaccess est bien dans le dossier spip

Merci d'aider mes pauvre petits neurones malades qui tournent en rond
avec la compréhension de ce fonctionnement !

Le 27/3/2015 01:02:49, Zapilou, dans un message intitulé "Re: [Spip]
SPIP dans un sous-répertoire, transfert automatique htaccess" nous a
informés :

Slt,

Le 27/03/2015 00:21, Perline-Spip a écrit :

Mais justement je ne veux pas changer de répertoire, je veux le garder
dans /SPIP.
En revanche je veux que les appels ne fassent plus mention de /SPIP.
Je ne suis pas sûre que je suis claire...

Dans ce cas si tu as accès au DNS, (possible chez OVH je pense) tu
déclares que le dossier du site n'est pas www mais
www/spip, ça règle la non-suppression du dossier spip, tout arrive
directement dedans.
Le RewriteBase reste / ...
Il faut supprimer le /spip de l'url du site
Ensuite dans le htaccess une règle de ré-écriture pour supprimer le
/spip des urls en dur genre ce que je disais pour la
suppression du dossier (on se retrouve dans la même situation avec un
/spip en trop):

"RedirectMatch 301 ^/spip/(.*)$ https://www.domain.tld/$1&quot;

A tester aussi sauf que c'est réversible le DNS ...

Le 26/3/2015 23:30:11, klaus++, dans un message intitulé "Re: [Spip]
SPIP dans un sous-répertoire, transfert automatique htaccess" nous a
informés :

au lieu de te compliquer la vie avec des liens cassés à cause d'un
déplacement d'un site de son répertoire /spip/ vers /
tu crées un lien dur qui fait que chaque accès à /etc. est identique
avec /spip/etc.
Comme ca tous tes /spip/etc. restent inchangés et continuent à marcher.

Ce n'est pas toujours faisable, mais souvent on peut contourner un tas
de choses avec cette approche.

cf. Hard link - Wikipedia

:-)k++

On Thu, 26 Mar 2015 19:40:52 +0100, Perline-Spip <spip@perline.org>
wrote:

Merci de t'intéresser à mon cas (assez difficile par les temps qui
courent je reconnais...) :slight_smile:
Teuf teuf... je tousse.
C'est-à-dire ?

Le 26/3/2015 18:52:41, klaus++, dans un message intitulé "Re: [Spip]
SPIP dans un sous-répertoire, transfert automatique htaccess" nous a
informés :

hard link linux ?
rien de plus simple
:-)k++

On Thu, 26 Mar 2015 18:39:42 +0100, Perline-Spip <spip@perline.org>
wrote:

Bonjour,
j'ai à gérer un site, utilisé depuis longtemps par plein de
rédacteurs.
Je le reprends, le mets à jour, etc.

Le site est dans un répertoire spip. Son appel est
http://mondomaine.tld/spip/
Je voudrais le rendre propre, donc que le répertoire n'apparaisse
pas.
Il y a un rewrite dans .htaccess qui permet de le laisser là où il
est en indiquant ce répertoire.
___________________________________
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
_____________________________________________

Donc RewriteBase /spip/
Est-ce que cela suffit pour que toutes les adresses qui seront
tapées
http://mondomaine.tld/spip/ soient comprises et interprétées, mais
affichent http://mondomaine.tld/ ?

Sinon, comment faire ?
Les solutions que je vois j'ai peur que ça fasse des boucles
entre le
répertoire principal et /spip

Par ailleurs plein de rédacteurs ont inscrit les liens internes en
clair.
Donc de la forme http://mondomaine.tld/spip/
La ligne ci-dessus renverra donc automatiquement et je n'ai rien à
changer dans la base ?

Merci beaucoup de votre aide.

--
****Fin du message end - Signature****
Perline

spip@perline.org – http://perline.org/

Ce message est couvert par le secret de la correspondance
(art. 226-15 et 432-9 du Code pénal)
********************************************

_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.net

Documentation de SPIP : http://www.spip.net/

Irc : de l'aide à toute heure : http://spip.net/irc