Вопрос

Ниже вы найдете мою текущую запись Vhost, которую я использую для сайта, который я в настоящее время имею в настоящее время. Эта вход VHOST работает нормально, когда у меня есть его на моей локальной машине, но когда я нажимаю свой код на мой постановщик, который выполняет эту же запись Vhost, я получаю 500 внутренней ошибки сервера.

Машина, на которой я работаю в этом Vhost, работает Apache 2.2.9 (Debian).

<VirtualHost 206.217.196.61:80>
    SuExecUserGroup 13labs 13labs
    ServerAdmin aellis@1three.com
    ServerName admin.13labs.net
    ServerAlias admin.13labs.net

    DirectoryIndex index.php
    DocumentRoot /var/www/13labs.net/html/admin/
    ErrorLog /var/www/13labs.net/logs/error.log

    # Hide .svn Directories
    <DirectoryMatch "\.svn">
            Order deny,allow
            deny from all
    </DirectoryMatch>

    # FastCGI
    Alias /fcgi-bin/ /var/www/13labs.net/fcgi-bin/

    AddHandler php-fastcgi .php
    AddType application/x-httpd-php .php
    Action php-fastcgi /fcgi-bin/admin-php.fcgi

    <Directory /var/www/13labs.net/fcgi-bin/>
            SetHandler fcgid-script
            AllowOverride None
            Options -Indexes +ExecCGI -FollowSymlinks -SymLinksIfOwnerMatch
            Order allow,deny
            Allow from all
    </Directory>

    <Directory /var/www/13labs.net/html/admin/>
            AllowOverride None
            Options -Indexes -FollowSymlinks -SymLinksIfOwnerMatch
            FileETag All
    </Directory>

    # Rewrite Logic
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !\.(gif|jpe?g|png|js|css|swf|php|ico|txt|pdf)$
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l
    RewriteRule ^/(.+)$ /index.php/$1 [PT,QSA,L]

Спасибо за любую помощь, которую вы можете предоставить.

С наилучшими пожеланиями,
Андрей

Это было полезно?

Решение

После многих испытаний и ошибок я обнаружил, что рабочие перезаписи должны быть следующими:

RewriteRule ^.*$ /index.php$1 [PT,QSA,L]

Затем в PHP мне нужно использовать $ _Server ['request_uri'] вместо $ _Server ['path_info'], чтобы убедиться, что мой сценарий PHP см. Пропущенное в URI.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top