Недавно я создал веб-сайт с laravel 4. Я использовал XAMP для тестирования своего веб-сайта на localhost и, чтобы упростить его, я создал виртуальный хост в файле vhosts, который указывает на общую папку моего приложения Laravel. Сайт работает отлично.
Теперь я арендовал веб-пространство у хостера One.com. Я открыл веб-пространство с помощью ftp, и когда я вошел в «root», но там не было никаких папок, поэтому я предполагаю, что корневая папка является общедоступной? Я не уверен.
Нормальная структура приложения Laravel выглядит следующим образом:
--> app
--> bootstrap
--> public
--> vendor
--> other files
Это не работает, потому что я думаю, что One.com не использует общедоступную папку html. Я пытался заставить это работать, но, к сожалению. Я переместил содержимое общей папки в корень своего домена и переместил все остальные папки в папку с именем core. Затем я изменил некоторые конфигурационные файлы index.php и paths.php, но все равно это не работает.
Вопрос в том, что мне нужно изменить в структуре папок, чтобы она работала на этом веб-сервере One.com, и какие файлы мне нужно адаптировать (.htaccess, paths.php)? Я хотел бы защитить свои личные папки, конечно.
Заранее спасибо.
Просто поместите файл .htaccess в корневую папку с данными ниже:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} !^public
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
one.com действительно использует папку public_html, потому что там хранятся ваши файлы. То, что вы не можете получить, это ваша домашняя папка. Xampp — это пакет для Windows. Убедитесь, что ваши имена файлов соответствуют условным обозначениям? Windows нечувствительна к регистру, а Linux чувствительна.