2016-01-22 2 views
1

Реальная структура каталогов:Как я могу перенаправить или сделать псевдоним для своих каталогов сайтов?

http://example.com/directory1/directory2/directory3/hiddendirectory/directory4/

мне нужен файл, чтобы открыть как:

http://example.com/hiddendirectory/directory4/

в браузере, но в действительности каталог все еще в первом место нахождения.

Я нахожусь на общем хостинге с hostgator и не имею полных привилегий, поэтому я не могу запускать какие-либо скрипты.

Я провел некоторое исследование, и я испортил попытку создания псевдонима, но я не могу заставить что-то работать.

Вот что я кладу в файле .htaccess:

Alias /hiddendirectory/directory4 /directory1/directory2/directory3/hiddendirectory/directory4 

Но я всегда получаю ошибку 500 сервера. Любой совет будет принят во внимание.

+1

Возможная дубликата [Удалить каталог из URL с] (http://stackoverflow.com/questions/18668612/remove-directory -from-url-with) –

+0

Да, я проверил это, к сожалению, ничего не могу получить. – David

ответ

0

Директива Alias ​​работает в контексте конфигурации сервера не в htaccess.

В htaccess вы можете использовать mod_rewrite для перезаписи своих дисков.

RewriteEngine On 

RewriteRule ^hiddendir/dir4/?$ /dir1/dir2/dir3/hiddendir/dir4 [NC,L] 

будет переписан

/hiddendir/dir4/ 

к

/dir1/dir2/dir3/hiddendir/dir4 
+0

Спасибо starkeen - попробовал ваше решение, но теперь я получаю ошибку 404. Возможно, мне нужно найти директиву Alias ​​в конфигурации сервера, как вы упомянули, - /etc/httpd/conf/httpd.conf - это правильный файл? Также для директивы alias мне нужно будет изменить разрешения или мой синтаксис будет полезен? – David

+1

Не обращайте на это внимания СПАСИБО! – David

+0

@ Давид, да, ваш псевдоним syntex правильный. Пожалуйста, прочитайте руководство для получения дополнительной информации об директивах ** alias ** и ** aliasMatch **. http://httpd.apache.org/docs/2.2/mod/mod_alias.html – starkeen