@solo45

Как поменять индексный файл?

Доброго времени суток, как поменять индексный файл в другой папке /public/index.php
чтоб при переходе на сайт не было ошибки 403
www.yoursite.com чтоб открывался так, а не так www.yoursite.com/public
прочел что можно через .htaccess
в папке public он есть но я незнаю как тут прописать это

вот код .htaccess
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect index.php to /
    RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
    RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L]

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]

    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
  • Вопрос задан
  • 202 просмотра
Пригласить эксперта
Ответы на вопрос 1
gedev
@gedev
сисадмин-энтузиаст
Вопрос сформулирован не очень понятно. Насколько я понял, вам надо изменить корневую директорию сайта с www.yoursite.com/public на www.yoursite.com. Можно сделать в .htaccess так:

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on
  
RewriteCond %{REQUEST_URI} !^/(public)
RewriteRule (.*) /public/$1
  
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /public/index.php


Если есть доступ к настройкам Apache, то проще поменять DocumentRoot. Если нет, то можно заменить папку, которая является DocumentRoot символической ссылкой на папку public/.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы