doubeng9567 2017-09-20 06:30
浏览 183
已采纳

“在此服务器上找不到请求的URL / projectname / pagename /。”WordPress网站上的问题

For my WordPress project, I am getting the error The requested URL /projectname/pagename/ was not found on this server. when I try to set the permalink to Postname: http://10.60.8.118/projectname/sample-post/. The project is hosted on my Ubuntu machine.

enter image description here

I am able to view the pages or posts with permalinks set as Plain: http://10.60.8.118/projectname/?p=123

Earlier .htaccess was not writable. So I changed it and now it is writable.

content of .htaccess

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

The above settings does not work. I have also tried changing the base to / (I guess it should be /devcounsyl/ but none of them works.)

content of .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>
# END WordPress

Also tried: Changing file and folder permissions assuming that that might be causing the issue:

find . -type d -exec chmod 775 {} \;

find . -type f -exec chmod 664 {} \;

database urls:

wp_options table has the value http://10.60.8.118/devcounsyl for siteurl and home

Project structure:

/var/www/html/devcounsyl/

The WordPress files are in the project folder and also the .htaccess file is in devcounsyl project folder.

  • 写回答

2条回答 默认 最新

  • duandao7704 2017-09-21 13:48
    关注

    Turns out that .htaccess was not the issue for me. The issue was in server configuration file. Posting my answer in case any one bumps into similar issue and looking for a solution.

    For AWS EC2 server:

    Step 1: Edit configuration file

    sudo nano /etc/httpd/conf/httpd.conf

    Edit this file and change

    <Directory /var/www/html/wordpress/>
        AllowOverride None
     </Directory>
    

    to

    <Directory /var/www/html/wordpress/>
        AllowOverride All
     </Directory>
    

    Note that here, /var/www/html/wordpress/ is path to the root folder where WordPress project was hosted.

    Step 2: Restart server

    Please don't forget to restart your server after you do the changes to the .conf file.

    sudo service httpd restart

    For Ubuntu server:

    Step 1: Edit configuration file

    sudo gedit /etc/apache2/apache2.conf

    Edit this file and change

    <Directory /var/www/html/wordpress/>
        AllowOverride None
     </Directory>
    

    to

    <Directory /var/www/html/wordpress/>
        AllowOverride All
     </Directory>
    

    Note that here, /var/www/html/wordpress/ is path to the root folder where WordPress project was hosted.

    Step 2: Restart server

    Please don't forget to restart your server after you do the changes to the .conf file.

    sudo service apache2 restart

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?