2016-07-28 52 views
1

我有一个网站我想临时托管在我的VPS上,但是我遇到了问题。未能加载Apache服务器上的资源

在'sites-available'中创建'.conf'文件并激活站点后,许多文件未正确链接到。

这里是我的.conf配置:

# domain: mynewsdesk.dev 
# public: /var/www/html/mynewsdesk.dev/public 

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    ServerName mynewsdesk.dev 
    ServerAlias www.mynewsdesk.dev 
    DirectoryIndex index.php 
    DocumentRoot /var/www/html/mynewsdesk.dev/ 
    ErrorLog /var/www/html/mynewsdesk.dev/public/logs/error.log 
    CustomLog /var/www/html/mynewsdesk.dev/public/logs/access.log 
    combined 
</VirtualHost> 

在Chrome检查,我看到“无法加载资源:服务器的状态为回应404(未找到)”之后的路径是清楚不正确,例如:http://45.79.67.59/mynewsdesk.dev/css/main.css.php

我应该更改哪些设置,以便从'mynewsdesk.dev/public/'而不是'mynewsdesk.dev'中提取文件?

回答

1

DocumentRoot更改为/var/www/html/mynewsdesk.dev/public/

或者,如果你有,你想运行是目录外的脚本,你必须启用mod_rewrite,你可以添加一些重写条件和规则,从public和直接的所有其他请求对这些脚本返回文件。

例如,在你的虚拟主机:

RewriteEngine on 

RewriteCond   %{DOCUMENT_ROOT}/public%{REQUEST_URI} -f 
RewriteRule ^(.+)$ %{DOCUMENT_ROOT}/public/$1 [L] 

RewriteRule ^(.*)$ index.php?$1 [NC,L,QSA] 
+0

感谢您的指点,我给这个一杆 – Androbaut

+0

只是跟进:真是棒极了!再次感谢 – Androbaut

相关问题