質問

Vagrantを使用して、少しWordpress開発VMを構築しています。パーマリンク(postname)を選択すると、記事のページが読み込まれません。ただし、標準のリンク(つまりページid)を選択すると、すべて正常に機能します。私はVMを構築するためにサービスPuPHPetを使用しました。

私の設定を見つけることができます ここに

私はワードプレス3.9.1とApache2を使用しています 私はmod_rewriteが実行されることを有効にしました:

a2enmod rewrite

そして、私の。Wordpressからのhtaccessファイルは次のとおりです:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /svisa/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /svisa/index.php [L]
</IfModule>

# END WordPress

次の権限と所有権があります:

-rw-rw-rw- 1 vagrant www-data   248 May 30 14:52 .htaccess

サイト用の私のvirtualhostファイル(/var/www/svisa/)を見つけることができます ここに.

私のホストコンピュータから、私はアドレスを介してサイトを参照します: http://wpdev-vm/svisa/ ここで wpdev-vm vmの名前を指定します。

パーマリンクを機能させるために私が欠けていることを誰かが知っていますか?

役に立ちましたか?

解決

私は自分で問題を解決しました。

デフォルトのapache設定では、以下の /etc/apache2/sites-enabled, 、私のものが呼ばれる場所 15-default.conf

これはドキュメントルートの下で宣言されました:

   <Directory "/var/www">
     Options Indexes FollowSymLinks MultiViews
     AllowOverride None
     Order allow,deny
     Allow from all
   </Directory>

私は変更しなければならなかった AllowOverride NoneAllowOverride All.したがって、次のようになります:

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

その後、パーマリンクが機能し始めました。

他のヒント

Apache2を使用して作業する.htaccessファイルを取得する方法については、Web上に十分な情報があります。しかし具体的には vagrant では、ゲストマシンのApacheで必要な設定が実装されていることを確認する必要があります。それは他のみんなに明白かもしれませんが、私は私のホストの設定の変化を浪費し、なぜそれが機能していなかったのかを理解できなかった。

ライセンス: CC-BY-SA帰属
所属していません wordpress.stackexchange
scroll top