現在、 Anchor CMSを Apache サーバーにインストールしようとしています。
サーバーへのデプロイに成功しました。つまり、www.domain.com にアクセスすると、デフォルトのテーマのフロント ページとテスト投稿が表示されます :)
ただし、投稿をクリックしたり、管理領域に移動しようとすると、次のようなエラーが表示されます。
見つかりません: 要求された URL /posts/hello-world がこのサーバーで見つかりませんでした。
ただし、次のような直接リンクを使用して (この場合) 投稿リンクをたどると:
www.domain.com/index.php/posts/hello-world
それは完全に正常に動作します。そのため、書き換えに問題があるようです。
ここにある私のものとまったく同じように、Stackoverflowで別の問題を見つけました
残念ながら、私は同じ手順を実行しましたが、何も機能しません。要約すると、これが私の VirtualHost の外観です。
<VirtualHost *:80>
ServerName www.domain.com
ServerAlias domain.com
DocumentRoot /var/www/domain.com/public_html
<Directory /var/www/domain.com/public_html>
AllowOverride All
Require all granted
</Dictory>
</VirtualHost>
そして、これは私のアンカーCMS config.appファイルがどのように見えるかです:
return array(
'url' => '/',
'index' => '',
...(rest of the data here)...
ドキュメントに記載されているように、このデフォルトのケースでは空のインデックスを使用します。
私の .htaccess は現在、次のようになっています。
Options -indexes
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Rewrite all other URLs to index.php/URL
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 index.php
</IfModule>
そして、それはドキュメントルート "public_html" にあります。
悲しいことに、これらの設定を行っても、「見つかりません」というエラーが表示されます。ここからどこへ行くべきか本当にわかりません:(
編集
Options -indexes
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^ http://google.com [R,L]
RewriteBase /
# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Rewrite all other URLs to index.php/URL
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 index.php
</IfModule>
.htaccess ファイルに一般的な書き直しを加えようとしましたが、実行されていないようです: