Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: настройка .htaccess
Форумы портала PHP.SU » » Вопросы новичков » настройка .htaccess

Страниц (1): [1]
 

1. jonston - 17 Августа, 2018 - 14:36:30 - перейти к сообщению
Приветствую!Фреймворк ларавел.Все запросы отсылаются к папке public.Вот содержимое файла .htaccess
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <IfModule mod_rewrite.c>
  3.     RewriteEngine On
  4.  
  5.     RewriteRule ^(.*)$ public/$1 [L]
  6. </IfModule>
  7.  


В папке паблик лежит дирректория admin.Так вот проблема в том, что при обращении к роуту admin он обращается к папке public/admin.Что нужно прописать, что бы при обращении к папке запрашивался index.php а не содержимое папки?заранее благодарю!
2. miketomlin - 17 Августа, 2018 - 15:18:32 - перейти к сообщению
Показанный файл – это заглушка для дураков. Вы лучше покажите .htaccess для паблика и, может быть, для admin, если есть. У меня никогда не возникало такой проблемы, чтобы обращение к папке не уходило во фронт.

И о каком index.php идет речь, public/admin/index.php или public/index.php?
3. jonston - 17 Августа, 2018 - 15:22:11 - перейти к сообщению
miketomlin пишет:
Показанный файл – это заглушка для дураков. Вы лучше покажите .htaccess для паблика и, может быть, для admin, если есть. У меня никогда не возникало такой проблемы, чтобы обращение к папке не уходило во фронт.

И о каком index.php идет речь, public/admin/index.php или public/index.php?


Благодарю за ответ.Речь идет об public/index.php.
.htaccess в public
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <IfModule mod_rewrite.c>
  3.     <IfModule mod_negotiation.c>
  4.         Options -MultiViews -Indexes
  5.     </IfModule>
  6.  
  7.     RewriteEngine On
  8.  
  9.     # Handle Authorization Header
  10.     RewriteCond %{HTTP:Authorization} .
  11.     RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
  12.  
  13.     # Redirect Trailing Slashes If Not A Folder...
  14.     RewriteCond %{REQUEST_FILENAME} !-d
  15.     RewriteCond %{REQUEST_URI} (.+)/$
  16.     RewriteRule ^ %1 [L,R=301]
  17.  
  18.     # Handle Front Controller...
  19.     RewriteCond %{REQUEST_FILENAME} !-d
  20.     RewriteCond %{REQUEST_FILENAME} !-f
  21.     RewriteRule ^ index.php [L]
  22. </IfModule>
  23.  

(Добавление)
miketomlin пишет:
Показанный файл – это заглушка для дураков. Вы лучше покажите .htaccess для паблика и, может быть, для admin, если есть. У меня никогда не возникало такой проблемы, чтобы обращение к папке не уходило во фронт.

И о каком index.php идет речь, public/admin/index.php или public/index.php?


В том и дело, что я обращаюсь к контроллеру admin а апач перехватывает запрос и думает что я запрашиваю содержимое public/admin
4. miketomlin - 17 Августа, 2018 - 15:44:45 - перейти к сообщению
А кто вас заставлял везде использовать это:
CODE (text):
скопировать код в буфер обмена
  1. RewriteCond %{REQUEST_FILENAME} !-d


Вот апач и «распоясался», раз его впрямую к этому принуждают Ну ты попал
5. jonston - 17 Августа, 2018 - 15:48:32 - перейти к сообщению
miketomlin пишет:
А кто вас заставлял везде использовать это:
CODE (text):
скопировать код в буфер обмена
  1. RewriteCond %{REQUEST_FILENAME} !-d


Вот апач и «распоясался», раз его впрямую к этому принуждают Ну ты попал


Это дефолтный .htaccess.Меня никто ничего не заставляет.Мне необходимо решить проблему.
6. miketomlin - 17 Августа, 2018 - 15:59:22 - перейти к сообщению
Вот и решайте. И от зацикливания на трэйлинг слешах еще это добавьте:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <IfModule mod_dir.c>
  3. DirectorySlash Off
  4. </IfModule>
  5.  

Если конечно апач не будет «активно сопротивляться».
(Добавление)
Либо продолжайте чистку:
CODE (text):
скопировать код в буфер обмена
  1.  
  2.     RewriteCond %{REQUEST_URI} (.+)/$
  3.     RewriteRule ^ %1 [L,R=301]
  4.  
7. jonston - 17 Августа, 2018 - 16:15:10 - перейти к сообщению
miketomlin пишет:
Вот и решайте. И от зацикливания на трэйлинг слешах еще это добавьте:
CODE (text):
скопировать код в буфер обмена
  1.  
  2. <IfModule mod_dir.c>
  3. DirectorySlash Off
  4. </IfModule>
  5.  

Если конечно апач не будет «активно сопротивляться».
(Добавление)
Либо продолжайте чистку:
CODE (text):
скопировать код в буфер обмена
  1.  
  2.     RewriteCond %{REQUEST_URI} (.+)/$
  3.     RewriteRule ^ %1 [L,R=301]
  4.  


Благодарю великодушно!Закомментировал строку dв последнем правиле все заработало!Но есть вопрос.Ведь не зря же разработчики туда это написали?не повлечет за собой ли это каких либо негативных последствий?Например угроза безопасности либо неправильная работа фреймворка?
8. miketomlin - 17 Августа, 2018 - 17:20:03 - перейти к сообщению
А что у разрабов по этому поводу написано? Если повлечет, то фрэймворк – полное оно.

И еще раз. Вы должны делать настройки, исходя из решаемой задачи, а не возникшей проблемы. На форуме такие вопросы задавать – себя не уважать, потому что кроме вас на них все равно никто не ответит.
9. jonston - 17 Августа, 2018 - 18:27:12 - перейти к сообщению
miketomlin пишет:
А что у разрабов по этому поводу написано? Если повлечет, то фрэймворк – полное оно.

И еще раз. Вы должны делать настройки, исходя из решаемой задачи, а не возникшей проблемы. На форуме такие вопросы задавать – себя не уважать, потому что кроме вас на них все равно никто не ответит.


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

 

Powered by ExBB FM 1.0 RC1