Я пытаюсь перенаправить/переписать url для создания субдомена для подстраниц. например: http://example.com/user вернет url как http://user.example.com, но не сможет найти способ. Мое приложение находится в рубин на рельсах и nginx сервер. Есть ли уловка для этого?Создание субдомена на сервере nginx
ответ
Следующая следует позаботиться о перенаправлении подобласти.
server {
server_name example.com;
location ~ ^/(?<user>[^/]+)/?$ {
return 301 $scheme://$user.$server_name;
}
}
эй большое спасибо. Он отлично работает. Еще одна помощь, так как я новичок в ** ngnix сервере ** Можете ли вы предложить мне какой-то онлайн-ресурс, чтобы понять их ** переписать **, ** return ** и ** регулярное выражение, написание ** понятий ясно. – tyson
[nginx docs] (http://nginx.org/en/docs/) - хорошая отправная точка. Я также нашел [nginx ловушки] (http://wiki.nginx.org/Pitfalls), чтобы быть особенно полезными. –
Вы можете сделать это в своем приложении Rails. Просто добавьте правило для ваших маршрутов файлов:
get '/', to: 'users#show', constraints: { subdomain: /\d+/ }
Тогда что когда вы посещаете *.example.com
, он будет перенаправлять users#show
.
Проверьте этот учебник для получения дополнительной информации Rails Routing Guide, часть 3.8.
В противном случае вы можете переписать конфигурацию в конфигурации nginx. Я не уверен, что это работает, проверьте this guide
server {
listen 80;
server_name user.example.com;
return 301 example.com/user
}
Надеется, что это полезно.
UPDATE
Вам просто нужно переписать Nginx конфигурации.
server {
listen 80;
server_name example.com;
rewrite \/home$ $scheme://home.example.com;
}
Затем сохраните конфигурации, загрузите Nginx с помощью sudo service nginx reload
для загрузки файла конфигурации.
Сообщите мне, если вы все еще беспокоитесь.
на самом деле мои настройки route.rb выглядят так :::::::: root to: 'pages # home' get 'home' => 'pages # home' – tyson
Я просто хочу переписать/вернуть свой url как http://example.com/home на http://home.example.com. Я использую Amazon EC2 для хостинга. – tyson
Извините, я не понимаю, что вы имеете в виду. Причина, по которой эта конфигурация маршрута не относится к вашему вопросу выше. – duykhoa
Возможно, вам лучше всего посмотреть на wildcard subdomain на Nginx
и сопровождать это с помощью маршрутизации Rails
для пользователей.
Помните, у Nginx нет подключений к вашей базе данных. Так что Nginx
conf действительно просто должен иметь возможность отправлять веб-трафик через сервер в ваше приложение rails.
Маршрутизация приложений Rails затем может использоваться для отправки трафика на определенные пользовательские страницы , если пользователь существует. Вы бы сделать это с constraint
-
Вот что я хотел бы сделать:
/etc/nginx/nginx.conf (or wherever your nginx config is stored)
server {
server_name yourdomain.com *.yourdomain.com;
...
}
Это даст вам возможность передавать любые запросы поддоменов через ваше приложение рельсы.
Я бы тогда сделать это в Rails routes
:
config/routes.rb
#put this at the top of the file so it does not conflict
get '', to: 'users#index', constraints: lambda { |request| User.exists?(name: request.subdomain) }
на данный момент, если у этого config/routes.rb ' root to: 'pages # home' get 'home' => 'pages # home'' где страницы - это моя директория, хранящаяся в **/my_app/app/view/pages **, а home is my ** home.html.erb ** страница – tyson
Ваш вопрос: «Я пытаюсь перенаправить/переписать url для создания субдомена для подстраниц. '- Я не понимаю, что с этим« root »? –
ok моя основная линия, которая направляет меня на ** home.html.erb ** страница 'get 'home' => 'pages # home'' – tyson
- 1. Карта URL-адрес субдомена (NGINX)
- 2. Конфигурация субдомена nginx
- 3. Создание субдомена на сервере, дающем 500 Внутренняя ошибка
- 4. Создание субдомена на одного пользователя
- 5. Прокси-сервер nginx для субдомена
- 6. Как использовать nginx с Go для субдомена?
- 7. Создание субдомена с точкой (.) Символом
- 8. Настройка SPF для субдомена на другом сервере
- 9. Создание субдомена с .htaccess
- 10. Создание субдомена cpanel api
- 11. Маршрут различного прокси-сервера на основе запроса субдомена в nginx
- 12. Создание субдомена на Amazon EC2 не работает
- 13. Git на сервере с nginx
- 14. Запустить secondcrack на сервере nginx
- 15. Nginx: динамический прокси от url до субдомена
- 16. Nginx конфигурации для субдомена и форума
- 17. Перенаправление субдомена с регулярным выражением в nginx
- 18. Указание субдомена на приложение, размещенное на IIS на другом сервере
- 19. Создание субдомена с Google Cloud + CloudFlare
- 20. Создание динамического субдомена в wp
- 21. Создание субдомена, IIS, AWS VM
- 22. Nginx перенаправлять включают субдомена, WWW и параметры
- 23. Создание субдомена в URL alaising
- 24. создание автоматизированного субдомена amazon ec2
- 25. Создание субдомена для каждого пользователя
- 26. Создание субдомена для развертывания api
- 27. Создание субдомена в virtualhost в apache 2.0 на CentOS 6.4
- 28. Перенаправление 301 из субдомена в адрес домена с nginx
- 29. Создать страницу как субдомен без создания субдомена на сервере
- 30. кросс PHP поддомен сессия для субдомена на другом сервере
Как вы хотите иметь дело с запросом, предлагающим сказать: http://example.com/users/new? Вы хотите, чтобы это произошло: http://new.example.com ИЛИ http://users.example.com ИЛИ что-то еще? – Sahil
Я хочу 'example.com/user' to' user.example.com' – tyson