GVKun编程网logo

Apache VirtualHost:如何ServerName一个不同于80的端口(apache不同端口访问不同网站)

38

如果您想了解ApacheVirtualHost:如何ServerName一个不同于80的端口和apache不同端口访问不同网站的知识,那么本篇文章将是您的不二之选。我们将深入剖析ApacheVirtu

如果您想了解Apache VirtualHost:如何ServerName一个不同于80的端口apache不同端口访问不同网站的知识,那么本篇文章将是您的不二之选。我们将深入剖析Apache VirtualHost:如何ServerName一个不同于80的端口的各个方面,并为您解答apache不同端口访问不同网站的疑在这篇文章中,我们将为您介绍Apache VirtualHost:如何ServerName一个不同于80的端口的相关知识,同时也会详细的解释apache不同端口访问不同网站的运用方法,并给出实际的案例分析,希望能帮助到您!

本文目录一览:

Apache VirtualHost:如何ServerName一个不同于80的端口(apache不同端口访问不同网站)

Apache VirtualHost:如何ServerName一个不同于80的端口(apache不同端口访问不同网站)

我使用Xampp,我想要test.localhost去127.0.0.1:81 。

在httpd.conf中我写道:

Listen 127.0.0.1:81 NameVirtualHost 127.0.0.1:81 <VirtualHost 127.0.0.1:81> ServerName test.localhost DocumentRoot "d:_projectsprojectx" DirectoryIndex index.PHP </VirtualHost>

和windowssystem32driversetchosts我添加:

127.0.0.1 test.localhost

但http://test.localhost现在把我带到127.0.0.1:80 。

Docker暴露Flask API的端口

如何获取一个进程在监听的端口?

在linux上运行节点(express)产生错误:产生EACCES

我如何在Linux中获得一个程序的版本

Nginx在80端口设置nodejs

我如何使它去到127.0.0.1:81 ?

如果端口不是80,.htaccess将redirect到错误页面

用java应用程序在linux中打开端口

在Windows 7中通过命令提示符访问代理服务器后面的FTP服务器

欺骗Rails应用程序认为它在不同的端口上

Hadoop Datanodes找不到NameNode

就您的浏览器而言, http://test.localhost是http://test.localhost:80 。

你想要的是一个Apache重定向…

<VirtualHost 127.0.0.1:80> serverName test.localhost Redirect / http://test.localhost:81 </VirtualHost>

或者在浏览器中使用http://test.localhost:81 ,而不是使用重定向。

总结

以上是小编为你收集整理的Apache VirtualHost:如何ServerName一个不同于80的端口全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

Apache NameVirtualHost *:80 has no VirtualHosts问题解决办法

Apache NameVirtualHost *:80 has no VirtualHosts问题解决办法

当启动apache的时候,如果事件管理器出现“Apache NameVirtualHost *:80 has no VirtualHosts”错误时,大部分是因为修改了apache的httpd.conf配置文件,将extra/vhosts.conf文件引入到httpd.conf中了。

复制代码 代码如下:
# Virtual hosts
Include conf/extra/httpd-vhosts.conf

httpd-vhosts.conf文件中有一句配置语句为

复制代码 代码如下:

NameVirtualHost *:80

如果httpd-vhosts.conf中没有存在类似:
复制代码 代码如下:

<VirtualHost *:80>
    ServerAdmin webmaster@jb51.net
    DocumentRoot "D:/WAPM/www"
    ServerName www.jb51.net
    ServerAlias www.jb51.net
    ErrorLog "logs/www.jb51.net-error.log"
    CustomLog "logs/www.jb51.net-access.log" common
</VirtualHost>

配置节,就会在事件管理器中出现Apache NameVirtualHost *:80 has no VirtualHosts错误。加上同上面的配置节就不会出现这个错误了。

您可能感兴趣的文章:

APACHE virtualHost 配置_侯永伟的空间_百度空间

APACHE virtualHost 配置_侯永伟的空间_百度空间

1.基于相同IP不同Port的虚拟主机



1)vi /etc/http/conf/httpd.conf

2)将Listen字段改为
Listen 80
Listen 8888
(以上设置表示使用80以及8888端口)

3)更改虚拟主机部分为:
<VirtualHost 192.168.0.1:80>
DocumentRoot /var/www/html/website1
</VirtualHost>
<VirtualHost 192.168.0.1:8888>
DocumentRoot /var/www/html/website2
</VirtualHost>

4)保存以上设置

5)创建目录以及页面文件:
#mkdir –p /var/www/html/website1
#mkdir –p /var/www/html/website2
#cd /var/www/html/website1
#cat >index.html <<EOF
>website1
>EOF
#cd /var/www/html/website2
#cat >index.html <<EOF
>website2
>EOF

(注:在/etc/httpd/conf/httpd.conf中有DirectoryIndex index.html index.html.var,表示只读index.html,而不读index.htm,切记)

6)service httpd restart

完成以上设置后,可以通过以下方式访问:

1)打开浏览器

2)输入
http://192.168.0.1:80以及http://192.168.0.1:8888



2.基于相同Port不同IP的虚拟主机



1)不同IP地址的配置:
#cd /etc/sysconfig/network-scripts
#cp ifcfg-eth0 ifcfg-eth0:1
#vi ifcfg-eth0:1
将eth0:1更改为:
DEVICE=eth0:1
ONBOOT=YES
BOOTPROTO=static
IPADDR=192.168.0.2
NETMASK=255.255.255.0

2)service network restart

3)vi /etc/httpd/conf/httpd.conf

4)更改虚拟主机部分为:
<VirtualHost 192.168.0.1:80>
DocumentRoot /var/www/html/website1
</VirtualHost>
<VirtualHost 192.168.0.2:80>
DocumentRoot /var/www/html/website2
</VirtualHost>

5)创建目录以及页面文件:
#mkdir –p /var/www/html/website1
#mkdir –p /var/www/html/website2
#cd /var/www/html/website1
#cat >index.html <<EOF
>website1
>EOF
#cd /var/www/html/website2
#cat >index.html <<EOF
>website2
>EOF

完成以上设置后,可以通过以下方式访问:

1)打开浏览器

2)输入
http://192.168.0.1:80以及http://192.168.0.2:80



3.基于域名的虚拟主机的访问



1)vi /etc/http/conf/httpd.conf

2)更改虚拟主机部分为:
NameVirtualHost 192.168.0.1
<VirtualHost www1.example.com>
DocumentRoot /var/www/html/website1
ServerName www1.example.com
</VirtualHost>
<VirtualHost www2.example.com>
DocumentRoot /var/www/html/website2
ServerName www2.example.com
</VirtualHost>

(注:以上设置中NameVirtualHost不可以省略)

3)创建目录以及页面文件:
#mkdir –p /var/www/html/website1
#mkdir –p /var/www/html/website2
#cd /var/www/html/website1
#cat >index.html <<EOF
>website1
>EOF
#cd /var/www/html/website2
#cat >index.html <<EOF
>website2
>EOF

4)完成以上设置后,可以通过以下方式访问:

1)打开浏览器

2)输入
http://www1.example.com 以及 http://www2.example.com  

Apache VirtualHost-模拟$ _SERVER ['HTTPS'] ='on';

Apache VirtualHost-模拟$ _SERVER ['HTTPS'] ='on';

如何解决Apache VirtualHost-模拟$ _SERVER [''HTTPS''] =''on'';?

我正在尝试模拟将其添加到wp-config.php:

$_SERVER[''HTTPS''] = ''on'';

除了在Apache“ Virtual Host Include”中执行的格式外。据我了解,这实际上告诉wordpress启用了SSL。

我所有的站点都使用CloudFlare Flexible SSL(CF中的强制https重定向),但它们都没有从AutoSSL / cPanel获得的证书。

不使用此代码,转到/ wp-admin将导致重定向循环。但是必须经历遍历并将代码添加到所有当前和将来的域中非常耗时。

我已经尝试了100万个密码,但是它们都不起作用。这是一个示例:

<VirtualHost *:80>
  RewriteEngine On
  RewriteCond %{HTTPS} off
  RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>

有人知道正确的包含编辑器/ VirtualHost代码来完成此操作吗?尽管在cPanel中没有有效的证书,我只需要告诉wordpress SSL已打开。我对所有网站都使用CF SSL。

或者,也许我已经完全离开了,需要编辑其他文件来完成此操作?

运行CentOS 7.8 / WHM 90.0.5 / Apache 2.4。

解决方法

经过几天的搜索,我终于找到了答案。

添加到Pre Main Include(pre_main_global.conf):

<IfModule mod_setenvif.c>
SetEnvIf X-Forwarded-Proto "https" HTTPS=on
</IfModule>

Apache VirtualHost配置

Apache VirtualHost配置

以lampp环境为例子,其他环境只是配置文件的路径不同。

先要在 lampp/etc/httpd.conf ( 这个是Apache 总的配置文件)中,将虚拟路径的注释去掉。

#Include etc/extra/httpd-vhosts.conf

使httpd-vhosts.conf文件起作用,或者直接在httpd.conf中写配置也可以,但不建议这么做。

相关的配置有:Listen NameVirtualHost <VirtualHost>

1. Listen 要监听的端口,多个端口,要写多个Listen;否则Apache启动的时候,不会启动相应的套接字。

比如

Listen 80

Listen 8080

2.NameVirtualHost 如果没有这个,<VirtualHost>标签就没什么作用。

一个NameVirtualHost 可以对用多个<VirtualHost>,每个<VirtualHost>必须有自己的NameVirtualHost(我猜的)

NameVirutalHost *:80

制定这个主机的IP和端口,如果服务器上有多个IP,就可以制定某个IP的某个端口是哪个 主机。

(新版的Apache已经去除了NameVirtualHost 这个配置,因为确实没什么用,参数在VirtualHost中都已经指明了)

3 最关键的VirtualHost

重要:Apache 在接受到请求时,首先会默认第一个VirtualHost,然后再找匹配的,如果没有匹配的,就是第一个VirtualHost起作用。

因此在httpd.conf中,将<Dicrectory />(这个是所有目录的默认配置)

和 <Direcotry /opt/lampp/htdocs>的权限,都是deny from all.作为默认。

所以,我的第一个VirtualHost是

<VirtualHost *:80>

ServerName *

DocumentRoot </opt/lampp/htdocs/guest>

<Directory /opt/lampp/htdocs/guest>

Order deny,allow

Allow from all

</Direcotry>

<VirtualHost/>

后面的,依次添加就可以

<VirtualHost *:80>

ServerName www.myweb1.com

DocumentRoot </opt/lampp/htdocs/myweb1>

<Directory /opt/lampp/htdocs/myweb1>

Order deny,allow

Allow from all

</Direcotry>

<VirtualHost/>

今天关于Apache VirtualHost:如何ServerName一个不同于80的端口apache不同端口访问不同网站的分享就到这里,希望大家有所收获,若想了解更多关于Apache NameVirtualHost *:80 has no VirtualHosts问题解决办法、APACHE virtualHost 配置_侯永伟的空间_百度空间、Apache VirtualHost-模拟$ _SERVER ['HTTPS'] ='on';、Apache VirtualHost配置等相关知识,可以在本站进行查询。

本文标签:

上一篇转发请求参数自定义404页面使用ErrorDocument在Apache?(请求转发带参数)

下一篇mod_jk1.2.32的JK状态pipe理器(status worker)在Web界面上没有显示worker的正确状态