Apache: изменить корень документа для каталога на сайте

Я кодирую веб-сайт портфолио, и одна часть моего веб-сайта — это прошлые работы. У меня есть архивная версия разработанного мной веб-сайта, который больше не доступен в сети. Я хотел бы, чтобы 8 могли просматривать сайт в mydomain.com/work/nameofoldsite.

Я только что загрузил архив старого сайта в рабочую папку на моем сайте-портфолио, но сейчас мне пришлось бы переделывать каждую страницу. Все ссылки на сайте являются абсолютными путями, но корневой каталог на новом портфолио отличается от исходного сайта. Например. Изображение, которое раньше было /files/img.jpg, теперь должно быть /work/nameofoldsite/files/img.jpg.

Как лучше всего поместить этот старый веб-сайт в мой новый сайт-портфолио, не изменяя весь мой код? Могу ли я просто изменить воспринимаемый корень документа для каталога /work/nameofoldsite?


person DontTurnAround    schedule 12.01.2016    source источник


Ответы (1)


Если бы ваш сайт был на чистом HTML, вы могли бы изменить все href, заменив все "/files" на "/work/nameofoldsite/files" в любом текстовом редакторе.

Вы также можете написать .htaccess, если вы запустите apache (с включенной перезаписью модов), который будет выглядеть так:

RewriteEngine On
RewriteRule ^files/(.)*$ /work/nameofoldsite/files/$1 [L,QSA]
RewriteRule ^anotherfolderyouwanttomove/(.)*$ /work/nameofoldsite/anotherfolderyouwanttomove/$1 [L,QSA]

но modRewrite может очень быстро пойти не так

Или если вы используете CMS, должно быть в администрации место, где вы можете установить корень CMS

person PookMook    schedule 12.01.2016
comment
Вы правы, мне просто пришлось много искать и заменять. Я действительно должен стандартизировать свое соглашение с одинарными и двойными кавычками. - person DontTurnAround; 13.01.2016