Apache 反向代理没有按照我期望的方式重写 URL

问题描述 投票:0回答:2

我对 Apache 还很陌生,希望设置一个反向代理以便能够访问我从一个站点拥有的一些 IP 摄像机的 Web 界面。我使用的基本布局如下:

                             / Cam 1 - 192.168.1.10  
Reverse Proxy - 192.168.1.6 -
                             \ Cam 2 - 192.168.1.11

当我单击链接时,它无法正确解析,URL 应该是

http://192.168.1.6/cam1/settings.htm
,但它解析为
http://192.168.1.6/setting.htm

Not Found
The requested URL /setting.htm was not found on this server.
Apache/2.2.22 (Debian) Server at 192.168.1.6 Port 80

我的配置在这里,我使用标准的 httpd.conf 并启用了代理和重写模块:

ProxyRequests off
<Proxy *>
    Order allow,deny
    Allow from all
</Proxy>

<VirtualHost *>
        Servername webserver
        RewriteEngine on

        RewriteRule ^/cam1/(.*)$ http://192.168.1.10$1 [P]
        RewriteRule ^/cam2/(.*)$ http://192.168.1.11$1 [P]

        ProxyPass /cam1 http://192.168.1.10
        ProxyPassReverse /cam1 http://192.168.1.10
        ProxyPass /cam2 http://192.168.1.11
        ProxyPassReverse /cam2 http://192.168.1.11

</VirtualHost>

如有任何帮助,我们将不胜感激。

干杯, 亚当

apache apache2 debian reverse-proxy mod-proxy
2个回答
0
投票

在日志中,您可以清楚地看到缺少一些文件,例如 文件不存在:/var/www/jpg/var/www/lang 所以这可能是您存储问题的原因。我敢打赌您在服务器或您的服务器 msy 由于某些其他文件而在运行时损坏了这些文件时错过了一些配置。我建议您重新下载,然后重新安装。


0
投票

对于未来的用户:

cat /etc/apache2/sites-available/default

<VirtualHost *:80>
    ServerAdmin [email protected]

    DocumentRoot /var/www
    <Directory />
            Options FollowSymLinks
            AllowOverride All
    </Directory>
    <Directory /var/www/>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
    </Directory>

    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    <Directory "/usr/lib/cgi-bin">
            AllowOverride None
            Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
            Order allow,deny
            Allow from 192.168.5.25
    </Directory>


    ErrorLog ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/access.log combined

    ProxyPass               /cameras/               http://192.168.5.6/
    ProxyPassReverse        /cameras/               http://192.168.5.6/

© www.soinside.com 2019 - 2024. All rights reserved.