Wordpress 显示启用了 Apache mod_rewrite 的目录列表
Posted
技术标签:
【中文标题】Wordpress 显示启用了 Apache mod_rewrite 的目录列表【英文标题】:Wordpress showing directory listing with Apache mod_rewrite enabled 【发布时间】:2019-07-28 20:57:27 【问题描述】:当我访问 crmpicco.localhost 时,我的 Wordpress 站点只显示目录列表而不是应用程序。
这是/usr/local/etc/httpd/extra/httpd-ssl.conf
:
##
## SSL Virtual Host Context
##
<VirtualHost _default_:443>
# General setup for the virtual host
DocumentRoot "/var/www/crmpicco/"
ServerName crmpicco.localhost:443
ServerAlias www.crmpicco.localhost
ServerAdmin crmpicco@crmpicco.com
ErrorLog "/private/var/log/apache2/error_log"
TransferLog "/private/var/log/apache2/access_log"
DirectoryIndex index.php
<Directory "/var/www/crmpicco">
AllowOverride All
</Directory>
<Directory "/var/www/crmpicco/wordpress">
AllowOverride All
</Directory>
Alias /app /var/www/crmpicco/symfony/web
Alias / /var/www/crmpicco/wordpress
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on
</VirtualHost>
我没有启用mod_rewrite
,我认为这是问题所在,但我现在启用了它,它显示在phpinfo();
中的loaded_modules
下
core mod_so http_core prefork mod_authn_file mod_authn_core mod_authz_host mod_authz_groupfile mod_authz_user mod_authz_core mod_access_compat mod_auth_basic mod_socache_shmcb mod_reqtimeout mod_filter mod_mime mod_log_config mod_env mod_headers mod_setenvif mod_version mod_ssl mod_unixd mod_status mod_autoindex mod_vhost_alias mod_dir mod_alias mod_rewrite mod_php7
位于/var/www/crmpicco/wordpress
目录中的.htaccess
文件如下所示:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %REQUEST_FILENAME !-f
RewriteCond %REQUEST_FILENAME !-d
RewriteRule . /index.php [L]
</IfModule>
我显然在某处有一些错误配置,但我不知道在哪里。
【问题讨论】:
【参考方案1】:我通过删除/
上的Alias
并将/wordpress
目录作为DocumentRoot
来解决这个问题。
相关行是:
<VirtualHost _default_:443>
DocumentRoot "/var/www/crmpicco/wordpress"
ServerName crmpicco.localhost:443
ServerAlias www.crmpicco.localhost
ServerAdmin crmpicco@crmpicco.com
ErrorLog "/private/var/log/apache2/error_log"
TransferLog "/private/var/log/apache2/access_log"
<Directory "/var/www/crmpicco/wordpress/">
Options +FollowSymLinks
DirectoryIndex index.php
Options -Indexes
Require all granted
AllowOverride all
</Directory>
Alias /app /var/www/crmpicco/symfony/web
...
</VirtualHost>
【讨论】:
以上是关于Wordpress 显示启用了 Apache mod_rewrite 的目录列表的主要内容,如果未能解决你的问题,请参考以下文章
在 Wordpress 上启用漂亮的永久链接 - apache 配置不起作用
apache_conf 通过启用gzip压缩来提高页面速度。在WordPress中添加到.htaccess
Wordpress 无法通过 ajax 请求加载正确的语言 mo 文件
我在wordpress表单插件Contact Form 7的使用上遇到问题,启用了这个插件,就是不显示。
我原先安装过一个mysql,结合iis和php安装了wordpress,后来装了xampp,在xampp里无法启用mysql了