我有一个奇怪的问题,我无法找到答案。我已经用 mod_disk_cache 设置了 apache2 服务器。我有奇怪的问题,我为不同的 URL 获得相同的页面。假设我通过主页访问页面 - 它工作正常。如果我从主页转到文章,我可以看到文章 - 工作正常。返回主页 - 工作正常。从主页到其他文章 - 问题:我还有主页的内容。
我是我的开发服务器,一切正常。在生产服务器上,我遇到了这些问题。
一些细节:
开发服务器:Windows 7 apache 2.2.17 php:5.3.4
生产服务器:centOS apache 2.2.3 php:5.2.9
HTTPD配置文件
...
ExpiresActive On
<Directory "/var/www/html/site-name">
Options FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
ExpiresDefault A86400
<FilesMatch "\.(jpg|png|gif)">
ExpiresDefault A31536000
</FilesMatch>
<FilesMatch "\.(js|css)$">
ExpiresDefault A31536000
</FilesMatch>
</Directory>
# Server Caching!
<IfModule mod_cache.c>
<IfModule mod_disk_cache.c>
CacheRoot /opt/cache-dir
CacheEnable disk /
CacheDirLevels 5
CacheDirLength 3
</IfModule>
</IfModule>
# Server Compressing
#SetEnv gzip-only-text/html 1
<Location />
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml
AddOutputFilterByType DEFLATE application/x-javascript
</Location>
# Disable captcha caching!
<Location "/index/captchaimage">
Header Set Cache-Control "max-age=0, no-store"
Header Set Expires "Sun, 11 Dec 2011 00:18:40 GMT"
</Location>
MOD_REWRITE 配置
RewriteCond %{HTTP_HOST} ^(www\.|es\.|forum\.)?domain\.com$ [nc]
RewriteRule ^robots\.txt$ - [L]
RewriteRule ^sitemaps\.xml /index.php?get_sitemap=1 [NC,L]
RewriteRule ^sitemaps\.es\.xml /index.php?get_sitemap=1&lang=es [NC,L]
RewriteRule ^sitemaps\.forum\.xml /index.php?get_sitemap=1&type=forum [NC,L]
#original
RewriteRule ^sitemaps\.xml$ - [L]
RewriteRule ^sitemaps\.es\.xml$ - [L]
RewriteRule ^sitemaps\.forum\.xml$ - [L]
RewriteRule ^rssfeed\.xml$ - [L]
RewriteCond %{HTTP_HOST} !^(www|es|links|forum)\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
RewriteRule ^.*/img/(articles|fancybox|users)?/?(.*\.(jpg|gif|png|jpeg|bmp)) public/img/$1/$2 [NC,L]
RewriteRule uploader.php /public/uploader.php [NC,L]
RewriteRule ^.*$ /public/index.php [NC,L]
好吧,我希望有人能够帮助或至少为我指出一些好的文档。顺便说一句:是的,我阅读了所有 apache 文档!
问候!