我想知道我是否可以使用同一域从互联网访问不同的文件夹。
我正在使用FCGI,这意味着对于每个项目我都有不同版本的php,在本地它可以正常工作,但从互联网上它不能,我不知道是否可以使用端口或其他方式来完成。
主持人:
::1 localhost
127.0.0.1 localhost
192.168.2.5 localhost
192.168.2.5 mydomain.ddns.net
192.168.2.5 project1.local
192.168.2.5 project2.local
在 httpd.conf 中:
Defines MYPORT8081 8081
Listen 0.0.0.0:80
Listen [::0]:80
Listen 0.0.0.0:${MYPORT8081}
Listen [::0]:${MYPORT8081}
在httpd-vhost.conf中
<VirtualHost *:80>
ServerName localhost
DocumentRoot c:/wamp/www
<Directory "c:/wamp/www/">
Options +Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName mydomain.ddns.net
DocumentRoot "c:/wamp/www/project1"
<Directory "c:/wamp/www/project1/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
<IfModule fcgid_module>
Defines FCGIPHPVERSION "7.4.22"
FcgidInitialEnv PHPRC ${PHPROOT}${FCGIPHPVERSION}
<Files ~ "\.php$">
Options +Indexes +Includes +FollowSymLinks +MultiViews +ExecCGI
AddHandler fcgid-script .php
FcgidWrapper "${PHPROOT}${FCGIPHPVERSION}/php-cgi.exe" .php
</Files>
</IfModule>
</VirtualHost>
#
<VirtualHost *:${MYPORT8081}>
ServerName mydomain.ddns.net
DocumentRoot "c:/wamp/www/project2/public"
<Directory "c:/wamp/www/project2/public/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
正如您在服务器名称重复(错误)中看到的,我希望拥有指向两个站点的相同域,但是当我从互联网输入浏览器时,我可以访问:
如果我将其放入本地(Lan)的 ServerName 中,则可以正常工作 项目1:项目1.local 项目2:项目2.local
但是我想通过不同的端口从互联网(wan)访问我的IP以访问每个文件夹。
如果此端口选项不可行,是否有其他方法可以在尊重 FCGI 的同时在线访问每个文件夹?
解决方案是在 ddns 服务器本身上创建一个指向相同 IP 的新域。
然后在虚拟主机中,您必须将新域分配给文件夹所在的路径,或者您可以保留该域以指向所有内容,并且您知道该域具有您想要的版本,例如:
<VirtualHost *:80>
ServerName mydomain2.ddns.net
DocumentRoot "c:/wamp/www/myproject/public"
<Directory "c:/wamp/www/myproject/public/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
<IfModule fcgid_module>
Defines FCGIPHPVERSION "8.2.10"
FcgidInitialEnv PHPRC ${PHPROOT}${FCGIPHPVERSION}
<Files ~ "\.php$">
Options +Indexes +Includes +FollowSymLinks +MultiViews +ExecCGI
AddHandler fcgid-script .php
FcgidWrapper "${PHPROOT}${FCGIPHPVERSION}/php-cgi.exe" .php
</Files>
</IfModule>
</VirtualHost>