How to connect to a specific website on localhost? [closed] - apache

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I have a local Apache server running on the network and I've got a number of tester machines. I want to be able to connect to a specific website on the localhost, at the moment it just connects to the first website.
For example: 192.168.1.125/mywebsite.
I've looked around I cannot find the method of conneciton, I know it's something really simple but everywhere I look answers a different problem. (Maybe this is too simple).
So basically I'm asking, how do I access the other servername though the browser. (setup is like so:)
<VirtualHost *:80>
DocumentRoot c:/vhosts/website1
ServerName website1
</VirtualHost>
<VirtualHost *:80>
DocumentRoot c:/vhosts/website2
ServerName website2
</VirtualHost>
I've tried
192.168.1.125~mywebsite
192.168.1.125:80/mywebsite.
192.168.1.125-mywebsite.
Can anyone help me here? Also what's the English for this? Namespace? Name-server or something?
*I get the error "Object not found" with these.

Name-based serving of apache is based on the actual hostname in the request. To make this work, you have to be able to reference that IP by any names you need. You have to be able to do http://hostname/ and not http://IP for name-based virtual hosts to work.
You can do this either with a hosts file (for a single host) or over DNS. Neither is a programming problem though.

Use virtual hosts. i.e. have something like this in the httpd.conf file:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName <make up a hostname here e.g. example.com>
DocumentRoot "<path to the web site files>"
</VirtualHost>
<Directory "<path to the web site files>">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
Then add the following to the to the hosts file in C:\Windows\System32\drivers\etc
127.0.0.1 <made up hostname as above>
Then you can access the web site as http://<hostname as above>
Guess it will be the same for Linux except the file would be /etc/hosts. You can repeat this as often as necessary.
EDIT Use the following it /etc/hosts on both the machine running the server and the machine running the browser
192.168.1.125 website2.example.com
192.168.1.125 website1.example.com
Then edit the two copies of the virtual hosts stuff above using the website1.example.com and website2.example.com

Shot in the dark
Map your testing machines to your server
~/test_machines/web_1
~/test_machines/web_2
~/test_machines/web_3
Then add the site entries to your vhost.conf. Use VirtualDocumentRoot from mod_vhost_alias. You can see the examples here: http://httpd.apache.org/docs/2.2/mod/mod_vhost_alias.html

Related

Configure apache vhost for 3-rd level subdomain [closed]

Closed. This question is not about programming or software development. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 12 hours ago.
Improve this question
I have VDS server without a normal domain. It has only DNS zone vm-4bbd6831.na4u.ru provided by my hosting service NetAngels.
Server has Ubuntu 22.04 with LAMP stack installed.
I should move to this server multiple websites, each website on its subdomain.
For instance:
site1 has address site1.vm-4bbd6831.na4u.ru
site2 has address site2.vm-4bbd6831.na4u.ru
and so on...
I tried configuring vsost like this:
<VirtualHost *:80>
ServerName site1
ServerAlias site1.*
DocumentRoot /var/www/site1
<Directory /var/www/site1/>
Options +ExecCGI -Includes -Indexes
AllowOverride All
</Directory>
I think i tried to change ServerName and ServerAlias with all possible values, but every time I reload apache and try to access http://site1.vm-4bbd6831.na4u.ru/ in web browser, I get only 'Server not found' message.
Give me please a clue, how can i configure vhosts...
I'll be very pleased, if you explain me how to properly use ServerName and ServerAlias
Thanks!!!

Apache Virtual Host doesn't work [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 6 years ago.
Improve this question
I'm trying to get Apache Virtual Host to work but it wont catch the domains and goes out on the internet instead.
I've enabled the Virtual Host in the Config file:
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
My httpd-vhosts.conf file looks like this:
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot "//nas/Web Design/Sites"
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster#fdn.dk
DocumentRoot "//nas/Web Design/Sites/Fdn"
ServerName fdn.dk
ServerAlias www.fdn.dk
ErrorLog "logs/fdn/error.log"
CustomLog "logs/fdn/access.log" common
</VirtualHost>
http://Localhost works fine but when i type fdn.dk or www.fdn.dk the browser tries to find the site on the internet instead of looking at my local folder.
What is wrong...??
I tried to find a solution on the internet but without luck.
Do I need to change something in the host file ???
Kind Regards
Flemming
Yes, you need to add that domain name to /etc/hosts file if you are using an operating system that has it.
Or to C:\WINDOWS\system32\drivers\etc\hosts if you are using Windows.
Example of record:
127.0.0.1 www.fdn.dk

Unexplained redirect using VirtualHosts and ServerAlias [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 9 years ago.
Improve this question
Using a virtual host, and a server alias, I'm getting a strange redirect that I do not understand where it is coming from.
Using stock apache2 on Ubuntu 12.04. Only the following changes to files in /etc/apache2/...
I have added a new virtual host as follows in the file sites-available/foo-com and enabled it with a2ensite
<VirtualHost *:80>
ServerName www.foo.om
ServerAlias foo.com
ServerAdmin webmaster#localhost
DocumentRoot /var/www/www.foo.com
<Directory /var/www/www.foo.com/>
Options FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
I also have a second virtual host for www.bar.com, which is exactly the same as above, but with foo replaced by bar
I have changed the default virtual host to a different document root
DocumentRoot /var/www/default
<Directory /var/www/default/>
.....
When I navigate to http://foo.com, I get a 301 redirect to http://www.foo.com/www.foo.com , which obviously returns a 404. Even more strangely, navigating to http://bar.com returns the relevant site correctly without a redirect.
I've been tearing my hair out trying to understand this strange behaviour. I've verified that there are no redirect's anywhere else in the apache confs. There is no reference to foo.com anywhere except the virtual host above. There is no .htaccess files in the document root.. I created the directory from scratch.
What else could be causing this?
From http://httpd.apache.org/docs/2.2/en/howto/htaccess.html
Further note that httpd must look for .htaccess files in all
higher-level directories, in order to have a full complement of
directives that it must apply. (See section on how directives are
applied.) Thus, if a file is requested out of a directory
/www/htdocs/example, httpd must look for the following files:
/.htaccess
/www/.htaccess
/www/htdocs/.htaccess
/www/htdocs/example/.htaccess
Looking at your rewrite log, it would seem you have a .htaccess file stuck in /var/www . Removing it or, preferably, disabling .htaccess should solve your problem.

How to remove port number from http://localhost:8123 to use as http://localhost? [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I had to change my default apache port number 80 to 8123 (just random number)
I changed the following files ..
httpd.conf
Listen 8123
ServerName localhost:8123
httpd-vhosts.conf
NameVirtualHost *:8123
<VirtualHost *:8123>
ServerName localhost
DocumentRoot "C:/xampp/htdocs"
DirectoryIndex index.php
</VirtualHost>
Windows Hosts file
127.0.0.1:8123 localhost
::1:8123 localhost
I am using Windows 7.
After making all these changes, I restarted apache but I am still unable to access http://localhost .... however http://localhost:8123 works fine ... can someone help me find what I am doing wrong here? thanks
The only way to do this is to change back to 80, or to install a listener on port 80 (like a proxy) that redirects all your traffic to port 8123.
When you enter a server name without a port, port 80 is assumed by default. AFAIK, there is no way to change this behaviour without changing your browser's source code.
The hosts file does not support the kind of redirection you are trying to do. The rules simply fail.
Edit: ah, it might be possible to change the default port in some browsers. Here's an article in MozillaZine for Firefox.
You can remove it with proxyPass and proxyPassReverse
<VirtualHost *>
ServerName localhost
ProxyPass / http://127.0.0.1:8123/
ProxyPassReverse / http://127.0.0.1:8123/
</VirtualHost>

Apache on localhost: give virtual hosts specific servers name [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
Ok, I ask my question first and below are details of what I have so far trying to solve the thing:
On Apache running on localhost, I want to have different virtual hosts that would be accessible through url:
http://name-of-the-virtual-host.name-of-the-machine/
Details:
So I have Apache running on port 8080 of my laptop. Linux Mint, so Debian distro. Everything is in local for testing purposes, so no DNS involved! The IP address I use is 127.0.1.1 which has the domain of my computer, called fabjoa. On the file /etc/apache2/apache2.conf, I've put:
ServerName fabjoa
In the file /etc/hosts, there is indeed the line
127.0.1.1 fabjoa
In the file /etc/apache2/ports.conf
NameVirtualHost *:8080
Listen 8080
Now, the conf file of my virtual host. The file is called is goyahkla and is located on /etc/apache2/sites-available/ and has a symbolic link in /etc/apache2/sites-enabled. On this file, I have the following:
<VirtualHost *:8080>
ServerName goyakhla.fabjoa
ServerAdmin webmaster#localhost
DocumentRoot /var/sites/goyahkla
....
<Directory /var/sites/goyahkla/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
...
</VirtualHost>
Running apache2ctl configtest gives me Syntax OK. Now, on browser, opening http://fabjoa:8080/ does point to the Virtual Host goyahkla (beacause that's the only one I have), but http://goyahkla.fabjoa:8080 is not found. Other debugging:
telnet goyahkla.fabjoa:8080
telnet: could not resolve goyahkla.fabjoa:8080/telnet: Name or service not known
lynx goyahkla.fabjoa:8080
Looking up 'goyahkla.fabjoa' first
Looking up 'www.goyahkla.fabjoa.com', guessing...
Looking up goyahkla.fabjoa first
Looking up www.goyahkla.fabjoa.com, guessing...
Looking up www.goyahkla.fabjoa.com:8080
Making HTTP connection to www.goyahkla.fabjoa.com:8080
Alert!: Unable to connect to remote host.
lynx: Can't access startfile http://www.goyahkla.fabjoa.com:8080/
Any idea on how purpose could be achieved?
Thank you
Don't you need to specify full hostname un hosts file? Like "goyahkla.fabjoa" instead of "fabjoa"?
Anyway, this is not programming question and should be asked on serverfault.com