Логотип   Простое и понятное управление
  Уникальные возможности по настройке
  Open Server скачали уже 1 375 499 раз!

Форум

Добро пожаловать, Гость!

Как правильно настроить алиасы в OpenServer, потому сервер вылетает из 404?

Обсуждение проблем в работе программного комплекса
Ruslan1728
Сообщения: 6
C нами: 5 мес 5 дней

Непрочитанное сообщение Ruslan1728 » 17 июн 2017, 14:48

Доброго времени суток. Столкнулся с следующей проблемой: разрабатываю проект на ии2 по шаблону advanced и для ЧПУ ссылок использую urlManager. В паки frontend / web, business / web, backend / web поставил .htaccess с кодом:
AddDefaultCharset utf-8

Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php

Слышал что можно алиасы в openserver настроить так, чтобы эта штука заработала, потому что сейчас apach вываливает 404 когда пытаюсь перейти по пунктам меню (на главную страницу 
захожу так прописал вручную домен hom.loc на папку hom.loc / frontend / web).
Я пробовал прописать алиасы, но там конечный домен можно выбрать из уже существующих. Помогите разобраться с проблемой.

Pashik
Сообщения: 95
C нами: 9 мес 23 дня

Непрочитанное сообщение Pashik » 17 июн 2017, 17:55

Здравствуйте. Я ни про какие фреймворки и шаблоны не в курсе и никогда их не использовал. Но зачем делать роутинг в этих папках? Не проще ли прописать эти правила в одном корневом .htaccess и манипулировать ссылками на уровне PHP?

Ruslan1728
Сообщения: 6
C нами: 5 мес 5 дней

Непрочитанное сообщение Ruslan1728 » 17 июн 2017, 19:33

Pashik писал(а):Здравствуйте. Я ни про какие фреймворки и шаблоны не в курсе и никогда их не использовал. Но зачем делать роутинг в этих папках? Не проще ли прописать эти правила в одном корневом .htaccess и манипулировать ссылками на уровне PHP?


Мне надо чтобы человек набрал а строке http // hom.loc имеет попасть в папку frontend / web, http // business.hom.loc --- business / web, http // admin.hom.loc --- backend / web и я не знаю как это можно реализовать через .htaccess.

Pashik
Сообщения: 95
C нами: 9 мес 23 дня

Непрочитанное сообщение Pashik » 17 июн 2017, 20:57

Добавляете алиас в настройках сервера вида "*.hom.loc" => "hom.loc". Создаете каждый поддомен вручную в папке с доменами, т.к. Windows динамически их не создает. И добавляете следующий код в корневой .htaccess сайта "hom.loc".
RewriteEngine on
RewriteBase /

RewriteCond %{HTTP_HOST} ^business\.hom\.loc$
RewriteCond %{REQUEST_URI} !/business/web
RewriteRule ^(.*)$ /business/web/$1 [L,NC]

RewriteCond %{HTTP_HOST} ^admin\.hom\.loc$
RewriteCond %{REQUEST_URI} !/backend/web
RewriteRule ^(.*)$ /backend/web/$1 [L,NC]

RewriteCond %{HTTP_HOST} ^\.hom\.loc$
RewriteCond %{REQUEST_URI} !/frontend/web
RewriteRule ^(.*)$ /frontend/web/$1 [L,NC]
Проверил, работает.

Ruslan1728
Сообщения: 6
C нами: 5 мес 5 дней

Непрочитанное сообщение Ruslan1728 » 17 июн 2017, 21:28

Pashik писал(а):Добавляете алиас в настройках сервера вида "*.hom.loc" => "hom.loc". Создаете каждый поддомен вручную в папке с доменами, т.к. Windows динамически их не создает. И добавляете следующий код в корневой .htaccess сайта "hom.loc".
RewriteEngine on
RewriteBase /

RewriteCond %{HTTP_HOST} ^business\.hom\.loc$
RewriteCond %{REQUEST_URI} !/business/web
RewriteRule ^(.*)$ /business/web/$1 [L,NC]

RewriteCond %{HTTP_HOST} ^admin\.hom\.loc$
RewriteCond %{REQUEST_URI} !/backend/web
RewriteRule ^(.*)$ /backend/web/$1 [L,NC]

RewriteCond %{HTTP_HOST} ^\.hom\.loc$
RewriteCond %{REQUEST_URI} !/frontend/web
RewriteRule ^(.*)$ /frontend/web/$1 [L,NC]
Проверил, работает.



Простите что трачу ваше время, но я не понял что именно вы имели в виду под: Создаете каждый поддомен вручную в папке с доменами, т.к. Windows динамически их не создает. . Пожалуйста скажите что я і где есть прописать и как, потому что что-то не понимаю как я должен сделать

Pashik
Сообщения: 95
C нами: 9 мес 23 дня

Непрочитанное сообщение Pashik » 17 июн 2017, 21:35

Ruslan1728, Вот у вас в папке с сайтами имеется "hom.loc". Нужно также создать "admin.hom.loc" и "business.hom.loc". Их не нужно наполнять чем - то, они всего лишь должны существовать. А также можете прописать поддомены в hosts файле. В этом случае не придется создавать папки.

Ruslan1728
Сообщения: 6
C нами: 5 мес 5 дней

Непрочитанное сообщение Ruslan1728 » 17 июн 2017, 21:52

Pashik писал(а):Ruslan1728, Вот у вас в папке с сайтами имеется "hom.loc". Нужно также создать "admin.hom.loc" и "business.hom.loc". Их не нужно наполнять чем - то, они всего лишь должны существовать. А также можете прописать поддомены в hosts файле. В этом случае не придется создавать папки.


Сделал как вы написали, в результате когда ввожу "admin.hom.loc" или "business.hom.loc" переходит в "hom.loc" и там останавливается. В папки business / web, backend / web, как задумано не переходит.

Pashik
Сообщения: 95
C нами: 9 мес 23 дня

Непрочитанное сообщение Pashik » 17 июн 2017, 21:54

Значит у вас там есть что - то еще. Покажите содержимое файла .htaccess. Поместите код в тег [code]. И как вы проверяли, что не переходит?

Ruslan1728
Сообщения: 6
C нами: 5 мес 5 дней

Непрочитанное сообщение Ruslan1728 » 17 июн 2017, 22:02

Pashik писал(а):Значит у вас там есть что - то еще. Покажите содержимое файла .htaccess.. И как вы проверяли, что не переходит?


У меня в папке 'hot.loc' стоит .htaccess с кодом:


RewriteEngine on
RewriteBase /

RewriteCond %{HTTP_HOST} ^business\.hom\.loc$
RewriteCond %{REQUEST_URI} !/business/web
RewriteRule ^(.*)$ /business/web/$1 [L,NC]

RewriteCond %{HTTP_HOST} ^admin\.hom\.loc$
RewriteCond %{REQUEST_URI} !/backend/web
RewriteRule ^(.*)$ /backend/web/$1 [L,NC]

RewriteCond %{HTTP_HOST} ^\.hom\.loc$
RewriteCond %{REQUEST_URI} !/frontend/web
RewriteRule ^(.*)$ /frontend/web/$1 [L,NC]



Проверял так:
  в адресную ленту ввожу admin.hom.loc и попадаю в hom.loc /, а нужно чтобы попал в hom.loc / backend / web

Pashik
Сообщения: 95
C нами: 9 мес 23 дня

Непрочитанное сообщение Pashik » 17 июн 2017, 22:08

Сам путь существует "/backend/web" в папке с сайтом "hom.loc"? Присутствует ли в папке "web" файл index.php?


Вернуться в «Ошибки Open Server»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость