У меня есть VPS с Apache + Cpanel. Я не могу настроить Nginx поверх него, поэтому, насколько я знаю, единственный способ - сначала «stati c export», а затем развернуть его. Оказывается, я не могу получить доступ к странице продукта по ссылке, вставленной непосредственно в строку URL (не щелкнув текст ссылки). Ссылка выглядит следующим образом: www.example.com/products/4
или www.example.com/products/213
Мое первое предложение - потому что я 'stati c экспортирую' проект.
Я использую следующие маршруты с <Link />
Мой код
import React, { Component } from 'react';
import { withRouter } from 'next/router';
import { connect } from 'react-redux';
import fetch from 'isomorphic-fetch';
import Navbar from '../components/Navbar';
import Footer from '../components/Footer';
import CheckoutBody from '../components/CheckoutBody';
class Product extends Component {
static async getInitialProps({ query }) {
let { id } = { ...query };
if (id === undefined) id = 14;
const res = await fetch(`http://www.example.com/api/product?id=${id}`);
const data = await res.json();
return { campaignDetail: data };
}
render() {
let { lang } = this.props;
return (
<React.Fragment>
<Navbar />
<CheckoutBody
key={this.props.productDetail.id}
productDetail={this.props.productDetail}
lang={lang}
/>
<Footer />
</React.Fragment>
);
}
}
export default Product ;
Тот же вопрос, но другая проблема: https://github.com/zeit/next.js/issues/9893
Я пробовал это в .htaccess. Это не работает. Я очень новичок ie в регулярных выражениях и htaccess.
RewriteCond %{REQUEST_FILENAME}.html -f
RewriteRule !.*\.html$ %{REQUEST_FILENAME}.html [L]
- Что мне делать?
- Это то, что называется динамическими c маршрутами?