0

このレポートを準備する 1 時間以上を含め、約 2 時間以上これを調査しました (24 時間寝ていないことを考えると、私は仕事が遅いに違いありません :-P)

仮想サーバー側のインクルードは Dreamweaver で機能しますが (画像のレンダリングを除く)、Web ページを参照すると機能しません。

<!--#include virtual="/partialHtml/businessResult.shtml" -->

あまりにも多くの構成設定をオーバーライドしたことに気付きました (そして、よりシンプルでエレガントな方法があれば、おそらく.htaccessファイルを使用するだけ~/Sites/mysite.com/でもコメントしてください) ;-)

上から (1)sudo nano /etc/apache2/httpd.conf

#
# Filters allow you to process content before it is sent to the client.
#
# To parse .shtml files for server-side includes (SSI):
# (You will also need to add "Includes" to the "Options" directive.)
#
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

(2)sudo nano /etc/apache2/extra/httpd-vhosts.conf

<VirtualHost *:80>
  <Directory /Users/tidy/Sites/mysite.com>
    Options +FollowSymlinks +SymLinksIfOwnerMatch +Includes
    DirectoryIndex index.htm
    AllowOverride All
    AddType text/html .shtml
    AddOutputFilter INCLUDES .shtml
  </Directory>
  DocumentRoot /Users/tidy/Sites/mysite.com
  ServerName mysite.local
  ErrorLog "/Users/tidy/Sites/mysite.com/log/error_log"
  CustomLog "/Users/tidy/Sites/mysite.com/log/access_log" common
</VirtualHost>

(3)sudo nano /private/etc/apache2/users/tidy.conf

<Directory "/Users/tidy/Sites/">
  Options +Indexes +MultiViews +FollowSymlinks +SymLinksIfOwnerMatch +Includes
  AllowOverride All
  Order allow,deny
  Allow from all
  AddType text/html .shtml
  AddOutputFilter INCLUDES .shtml
</Directory>

(4)sudo nano ~/Sites/mysite.com/.htaccess

AddType text/html .shtml
AddHandler server-parsed .shtml
DirectoryIndex index.html index.htm
Options +Includes
XBitHack on

また、そのファイルを実行してインクルードすることで使用しようとしました(ファイルXBitHack onを使用したくない場合は、ファイルサーバー側のインクルードが効率的になるようです)chmod +x ~/Sites/mysite.com/partialHtml/businessResult.html.html.shtml

sudo apachectl configtest明らかに、私はすべてが大丈夫であることを確認するためにやっています.

(取り除こうとした) という警告が表示されますが、構文は問題ありません。

httpd: Could not reliably determine the server's fully qualified domain name, using complexity.local for ServerName
Syntax OK

次に、sudo apachectl restart

これが私の最近の活動ですcat ~/Sites/mysite.com/log/access_log

::1 - - [08/Jan/2013:12:11:05 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [08/Jan/2013:12:11:07 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [08/Jan/2013:12:11:08 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [08/Jan/2013:12:11:15 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [08/Jan/2013:12:11:16 +0000] "OPTIONS * HTTP/1.0" 200 -
::1 - - [08/Jan/2013:12:11:17 +0000] "OPTIONS * HTTP/1.0" 200 -
127.0.0.1 - - [08/Jan/2013:12:12:03 +0000] "GET / HTTP/1.1" 200 3924
127.0.0.1 - - [08/Jan/2013:12:12:03 +0000] "GET /css/site.css HTTP/1.1" 200 3077
127.0.0.1 - - [08/Jan/2013:12:12:03 +0000] "GET /css/bootstrap.css HTTP/1.1" 200 124223
127.0.0.1 - - [08/Jan/2013:12:12:03 +0000] "GET /img/logo.png HTTP/1.1" 200 19217
127.0.0.1 - - [08/Jan/2013:12:12:04 +0000] "GET /img/searchFormGradient.gif HTTP/1.1" 200 501
127.0.0.1 - - [08/Jan/2013:12:12:04 +0000] "GET /img/glyphicons-halflings-white.png HTTP/1.1" 200 8777
127.0.0.1 - - [08/Jan/2013:12:12:04 +0000] "GET /img/headerGradient.png HTTP/1.1" 200 216
127.0.0.1 - - [08/Jan/2013:12:12:04 +0000] "GET /js/bootstrap.min.js HTTP/1.1" 200 31596
::1 - - [08/Jan/2013:12:12:14 +0000] "OPTIONS * HTTP/1.0" 200 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET / HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /css/bootstrap.css HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /js/bootstrap.min.js HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /img/logo.png HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /css/site.css HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /img/headerGradient.png HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /img/glyphicons-halflings-white.png HTTP/1.1" 304 -
127.0.0.1 - - [08/Jan/2013:12:12:18 +0000] "GET /img/searchFormGradient.gif HTTP/1.1" 304 -

HTTP/1.1 304コードはエラーHTTP Error 304 - Not modifiedではなく、サーバーからブラウザへのシグナルであり、現在のコンテンツが最後のリクエスト以降変更されていないことを示しています。

リクエストからわかるGETように、その兆候はありません/partialHtml/businessResult.shtml

これが私の最近の活動ですcat ~/Sites/mysite.com/log/error_log

[Tue Jan 08 11:24:49 2013] [error] [client 127.0.0.1] File does not exist: /Users/tidy/Sites/mysite.com/favicon.ico

そして、結局のところ...サーバーサイドインクルードメカニズムが機能していません:-(

どんな支援も大歓迎です。

几帳面。

4

1 に答える 1

0

私は自分の問題の解決策を持っていると思います。

Windows 7のサーバーサイドインクルードでも同じ問題が発生していました。これは、インクルードされたファイルにのみ.shtml拡張子が必要であるという誤った印象を受けたためです。

行のため: <!--#include file="partialHtml/businessResult.shtml" -->

と呼ばれるファイルにありました: index.html

サーバーサイドインクルードモジュールはファイルを前処理していませんでした。

サーバーサイドに変更index.htmlindex.shtmlた後、インクルードモジュールはすべてを正しく前処理しました。

TL; DR-サーバーサイドインクルードを含むファイルには、.shtml拡張子が必要です。

于 2013-01-12T00:30:29.110 に答える