32

この問題について考えられるほとんどすべてを読みましたが、問題を解決するものは何も見つかりませんでした。これは私が取得しているエラーログです: Options FollowSymLinks or SymLinksIfOwnerMatch is off これは RewriteRule ディレクティブが禁止されていることを意味します: /var/www/vhosts/site.com/httpdocs/cgi-bin/cron.pl

サイトにアクセスすると、403 Forbidden "You do not have permission to access this document." が表示されます。エラー。

.htaccess を次のように変更しました。

Options +FollowSymLinks +SymLinksIfOwnerMatch
AddDefaultCharset utf-8
RewriteEngine on
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_CGI_AUTHORIZATION:%1]
.
.
.

これもhttpd.confに追加しました:

AddHandler cgi-script .cgi
AddHandler cgi-script .pl

<Directory />
Options -ExecCGI FollowSymLinks -Includes -IncludesNOEXEC -Indexes -MultiViews -SymLinksIfOwnerMatch
AllowOverride All
</Directory>

本当に次はどうすればいいですか?

4

5 に答える 5

11

オプションのApacheドキュメントからこれに注意してください:

+ または - を含むオプションとそれらを含まないオプションを混在させることは有効な構文ではなく、サーバーの起動時に中止を伴う構文チェックによって拒否されます。

ブロック内で +/- のあるオプションとないオプションを混在させています (つまり、FollowSymLinks を参照してください)。

オプションの前に「+」を追加するのを忘れていたサイトの 1 つで、今日、まったく同じエラーが表示されました。「+」を追加したところ、機能するようになりました。

于 2012-10-17T21:33:41.063 に答える
0

これをルート ディレクトリに配置します。

<Directory />
    #AllowOverride none
    Require all denied
    Options FollowSymLinks
    Options SymLinksIfOwnerMatch 
</Directory>

<Directory "root">
    Options FollowSymLinks
    Options SymLinksIfOwnerMatch 
</Directory>
于 2014-03-04T11:26:17.090 に答える