У меня есть локальный блок разработки, в котором настроены apache2 и поддомены с подстановочными знаками, dnsmasq и локальный веб-сайт. Эта настройка удобна для тестирования с несколькими браузерами, поскольку веб-приложение на локальном сайте не позволяет нескольким браузерам входить в систему из одного и того же местоположения/домена. Эта система работает хорошо, за исключением тех случаев, когда я пытался тестировать iframe и использовать поддомены с подстановочными знаками в URL-адресе iframes src. После чего я получаю ошибку страница не найдена.
Как видно из URL-адреса, содержащегося в сообщении об ошибке, которое вы можете просмотреть внизу этой страницы, кажется, что может быть некоторый конфликт между файлами конфигурации apache для виртуальных хостов в игре и перенаправлением в jsgame, но я в растерянности как это исправить. Кто-нибудь может подсказать, как исправить эту проблему?
ОС — Debian 6, и так настроена моя система.
Апач
Внутри etc/apache2/сайты-доступны/игра
<VirtualHost *:80>
ServerName catchall.game
ServerAlias *.game
VirtualDocumentRoot /var/www/%1
</VirtualHost>
#
<VirtualHost *:80>
ServerName mplayer.game
ServerAlias *.game
DocumentRoot /var/www/game/public
</VirtualHost>
Веб-сайт
Внутри etc/apache2/sites_available/jsgame
Alias /jsgame/ usr/share/jsgame
RedirectMatch ^/jsgame/?$ /jsgame/example/index.html
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /JSGAME_REST http://127.0.0.1:19384/JSGAME_REST retry=1
ProxyPass /AVATAR http://127.0.0.1:19384/AVATAR retry=1
ProxyPass /UPLOAD http://127.0.0.1:19384/UPLOAD retry=1
Dnsmasq
строка 62 в файле etc/dnsmasq.conf
# Add domains which you want to force to an IP address here.
# The example below send any host in doubleclick.net to a local
# webserver.
address=/.game/127.0.0.1
index.html
Доступ к веб-приложению осуществляется через:
master.game/jsgame/example/index.html?game_id=45
iframe
код iframe внутри /jsgame/example/index.html
<iframe id="player0" width="25%" height="25%" src="player0.game/jsgame/pts1.html" style="position:absolute;left:0px;top:0"></iframe>
Я получаю эту ошибку от iframe:
Запрошенный URL-адрес /jsgame/example/player0.game/pts1.html не найден на этом сервере.
Я ожидал, что URL будет таким:
player0.game/example/pts1.html отличается от показанного выше.
http://player0.game/example/pts1.html
? Это не будет считаться относительным. - person Yoann   schedule 07.10.2014http://
вы абсолютно уверены, что она абсолютна. Я не могу проверить вашу настройку на данный момент, поэтому я не могу эффективно помочь вам. Извиняюсь. - person Yoann   schedule 08.10.2014