Помогите заменить заводскую установку apache на Mac на MAMP PRO, чтобы FileMaker работал с другими моими веб-сайтами?

Я использую Mac 10.4 и использую MAMP PRO для размещения нескольких веб-сайтов, которыми я управляю. Теперь, когда я установил FileMaker Pro Server, мне приходится включать общий доступ в Интернете в Системных настройках. Так можно ли заменить Apache версией MAMP PRO? Или можно заставить FileMaker Pro использовать MAMP вместо общего доступа в Интернете? Если да, то как я могу это сделать?

Кроме того, с помощью мгновенной веб-публикации FileMaker, как мне сделать так, чтобы мой домен напрямую связывался с тем, где его публикует FileMaker? Итак, что я хочу сделать, так это ввести http:///mydomain.com и перейти на мой домен. ком: 591/ФМИ/ИВП/


person tannerSF    schedule 14.03.2010    source источник


Ответы (1)


Вы можете изменить связанный с ним системный файл launchd.plist, чтобы он запускал вашу пользовательскую установку apache.

Вы делаете это, редактируя:

/System/Library/LaunchDaemons/org.apache.httpd.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Disabled</key>
    <true/>
    <key>Label</key>
    <string>org.apache.httpd</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/sbin/httpd</string>
        <string>-D</string>
        <string>FOREGROUND</string>
    </array>
    <key>OnDemand</key>
    <false/>
    <key>SHAuthorizationRight</key>
    <string>system.preferences</string>
</dict>
</plist>

Измените строку /usr/sbin/httpd на путь к вашей пользовательской установке apache. Убедитесь, что вы сначала отключили общий доступ к Интернету или из командной строки:

launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

После того, как вы отредактируете его, нажмите кнопку общего доступа в Интернете или из командной строки:

launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist

Для второго вопроса вы можете установить перенаправление в своей конфигурации apache.

/path/to/apache2/conf/httpd.conf

Не совсем уверен, где это для MAMP, общий синтаксис:

Redirect / http://mydomain.com:591/FMI/IWP/

Обычно рекомендуется заключать их в условные операторы.

<IfModule alias_module>
    Redirect / http://mydomain.com:591/FMI/IWP/
</IfModule>

И я думаю, что это было бы более элегантным решением для передачи запросов через прокси.

</IfModule>
<IfModule proxy_module>
  ProxyRequests Off
  <Proxy *>
    Order deny,allow
    Deny from all
    Allow from localhost
  </Proxy>
  <Location /filemaker/>
    ProxyPass /filemaker/ http://www.google.com/
    ProxyPassReverse /filemaker/ http://www.google.com/
    ProxyPass /images http://www.google.com/images
    ProxyPass /extern_js http://www.google.com/extern_js
    ProxyPass /intl http://www.google.com/intl
    ProxyPass /csi http://www.google.com/csi
  </Location>
</IfModule>

В этом примере мне просто нужно перейти на http://localhost/filemaker, и он покажет страницу Google. Какие ресурсы вы передаете в ProxyPass, зависит от того, что нужно файлмейкеру.

Если вы не заботитесь о сохранении своего домена и хотите, чтобы все использовалось через прокси, вам следует

</IfModule>
<IfModule proxy_module>
  ProxyRequests Off
  <Proxy *>
    Order deny,allow
    Deny from all
    Allow from localhost
  </Proxy>
    ProxyPass / http://www.google.com/
    ProxyPassReverse / http://www.google.com/
</IfModule>
person jkyle    schedule 06.04.2010
comment
Почему бы просто не отключить файл launchd.plist от Apple и не создать свой собственный. Если Apple обновит свой plist через обновление программного обеспечения, они перезапишут ваши настройки, что вызовет много путаницы и горя! - person tegbains; 19.04.2010