Q: Can a DNS domain name point to a folder on a server?
A: No.
Итак, у меня есть доменное имя DNS для моего компьютера, чтобы я мог легко подключиться к нему, не помня каждый раз мой IP-адрес, и он отлично работает. У меня также есть веб-сайт, размещенный на моем компьютере, для которого у меня есть доменное имя. Доменное имя имеет параметр переадресации URL, Frame(cloaking)
который указывает на папку моего сайта.
У меня есть часть входа на мой сайт, который использует сессии php. Когда я захожу на localhost, чтобы протестировать сессию, она работает нормально. Но когда я использую свое доменное имя, оно не работает вообще. Поэтому я попытался использовать свое DNS-имя и поместить папку после него example.tk/MySite
. К моему удивлению это сработало. Но если я не /MySite
ввожу после DNS-имени, это идет к MAMP Index of /
. Я не хочу этого вообще. Мне было интересно, если можно перенаправить DNS-имя домена в папку. Я посмотрел это, и люди сказали нет, вы должны настроить «Виртуальный хостинг» или что-то еще. Теперь я очень мало знаю обо всем этом в Домене, поэтому любая помощь будет принята с благодарностью.
Заранее спасибо!
Где я разобрался с виртуальным хостингом.
Q: Can a DNS domain name point to a folder on a server?
A: No.
DNS cannot forward to a folder.
There are some options to solve this a different way.
First, many DNS providers allow you to set up "HTTP redirection" for a DNS name. What's actually happening with this feature is that the DNS is pointing to the provider's web server, where they have a simple web server configuration set up to provide the HTTP redirection portion.
You could use the approach yourself: Point the DNS to a server where you are running a web server that is configured to respond to the same domain name, by either displaying or redirecting to a folder. The details vary significantly based on the details of your situation.
The behavour you observe is exactly as expected. Note that an URL like http://example.tk:80/MySite
means that the client has to contact the host example.tk
(and only to find out whyich host that refers to is what DNS is used for in this context), then initiate a TCP connection to a server process listening on port 80
of that host, then use the http
protocol to request the URI /MySite
from example.tk
. The typical webserver will interprete such a path-like URI as a path relative to its document root and for exmample return the content of a file of that name (or execute a php script or list the contents of a directory [in fact after a redirection] or whatever you configure).
So since you are almost happy with the result - just off a directory level - I suggest you reconfigure your webserver to serve from a different document root. On the other hand, your report about http://localhost
doing the right thing suggests that you already have virtual hosting set uop, i.e., the vhost localhost
is configured to use that MySite folder as its document root. It should be possible to modify the configuration of your example.tk
host to serve from the very same document root. Maybe start reading through the vhost-specific configuration files of your webserver (probably located in /etc/apache2/sites-enabled
or similar). Look out especially for DocumentRoot
options, of course.