当我配置好了web服务器但是访问网站的时候只能访问首页,其他的页面404 显示如下错误提示:
404 Not Found The requested URL was not found on this server
解决办法如下:
1.检查下自己web服务器 apache
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot "/var/www/html/siteall/www.sky8g.com" ServerName www.sky8g.com #是否有下面的配置,如果没有请加上 如下 <Directory /var/www/html/siteall/blog.sky8g.com> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/blog.sky8g.com-error.log CustomLog ${APACHE_LOG_DIR}/blog.sky8g.com-access.log combined </VirtualHost> |
2.检查网站目录下的.htaccess文件内容如下
1 2 3 4 5 6 7 8 9 10 | # 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> # END WordPress |
3.最后检查是否开启了mod_rewrite模块
首先在可以在你们网站目录下创建一个test.php文件,内容如下
1 2 3 | <?php phpinfo(); |
访问这个文件看下是否有如下
如果没有开启需要安装,如下操作
1 | a2enmod rewrite |
在服务器里面执行上面的命令【注意:需要拥有root的权限进行安装】
1 2 3 4 5 6 7 | root@1f316b804236202:/var/www/html/siteall# a2enmod rewrite Enabling module rewrite. To activate the new configuration, you need to run: service apache2 restart root@1f316b804236202:/var/www/html/siteall# service apache2 restart [ ok ] Restarting Apache httpd web server: apache2. root@f316b8042360:/var/www/html/siteall# |
4.安装完成后再次访问文件就会出现如上图所示,有这个mod_rewrite模块