Symfony 1.3.6 - всплывающее окно javascript windw - как? - PullRequest
0 голосов
/ 16 ноября 2010

Я использую SF 1.3.6.У меня есть несколько статических текстовых файлов (HTML), которые я хочу отображать во всплывающем окне.

Я попытался это сделать:ссылка на сайт.Как я могу это исправить?

Примечание: я действительно не хочу писать маршрут, действие и шаблон для этих статических файлов - есть ли другой способ получения всплывающих окон с SF?1010 * [Редактировать]

Это мой оригинальный контент .htaccess.

<IfModule mod_rewrite.c>
  RewriteEngine On

  #force everything to www so URLs look the same
  RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
  RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]

  # uncomment the following line, if you are having trouble
  # getting no_script_name to work
  #RewriteBase /

  # we skip all files with .something
  #RewriteCond %{REQUEST_URI} \..+$
  #RewriteCond %{REQUEST_URI} !\.html$
  #RewriteRule .* - [L]

  #redirect on trailing slash (otherwise, Symfony will 404)
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)/$ /$1 [R=302,L]

  # we check if the .html version is here (caching)
  RewriteRule ^$ index.html [QSA]
  RewriteRule ^([^.]+)$ $1.html [QSA]
  RewriteCond %{REQUEST_FILENAME} !-f

  # no, so we redirect to our front web controller
  RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

Я заменил его сценарием Джереми.Затем я перезапустил Apache, но получаю ту же ошибку

404 |Не найден |sfError404Exception Пустой модуль и / или действие после анализа URL-адреса "/foobar.html" (/).

Ответы [ 3 ]

1 голос
/ 20 ноября 2010

Попробуйте добавить ведущий "/" в foobar.html.

javascript:showPopup('/foobar.html', 'all about foobar')

Если вы находитесь в среде разработчиков, то вызов foobar.html фактически вызовет frontend_dev.php/foobar.html.Добавление лидирующей "/" удаляет frontend_dev.php.

1 голос
/ 16 ноября 2010

Файл Symfony .htaccess по умолчанию должен содержать строку для обслуживания файлов, уже существующих в веб-каталоге. Убедитесь, что указанный вами путь к файлу существует внутри сети. Вот соответствующие строки из .htaccess:

# we check if the .html version is here (caching)
RewriteRule ^$ index.html [QSA]
RewriteRule ^([^.]+)$ $1.html [QSA]
RewriteCond %{REQUEST_FILENAME} !-f

Вот мой полный .htaccess с некоторыми другими улучшениями:

<IfModule mod_rewrite.c>
  RewriteEngine On

  #force everything to www so URLs look the same
  RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
  RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]

  # uncomment the following line, if you are having trouble
  # getting no_script_name to work
  #RewriteBase /

  # we skip all files with .something
  #RewriteCond %{REQUEST_URI} \..+$
  #RewriteCond %{REQUEST_URI} !\.html$
  #RewriteRule .* - [L]

  #redirect on trailing slash (otherwise, Symfony will 404)
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)/$ /$1 [R=302,L]

  # we check if the .html version is here (caching)
  RewriteRule ^$ index.html [QSA]
  RewriteRule ^([^.]+)$ $1.html [QSA]
  RewriteCond %{REQUEST_FILENAME} !-f

  # no, so we redirect to our front web controller
  RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
0 голосов
/ 16 ноября 2010

Где вы храните ваши статические файлы?Чтобы получить к ним доступ с помощью / foobar.html , необходимо поместить их в каталог web / .

Кроме того, не забудьте сделать их читаемыми веб-сервером.

...